2010-08-21 43 views
20

我目前正在編寫我的第一個Android應用程序,並且一直運行到對後臺和前臺服務的引用。由於我打算在我的應用程序中使用服務,因此我希望能夠澄清兩者之間的關係以及如何使用它們。背景和前臺服務有什麼區別?

回答

29

也許這會回答你的問題:

一個啓動的服務可以使用startForeground API把服務 在前臺狀態,當系統認爲它是什麼 用戶積極知道因此當內存不足時,不會殺死 。默認情況下服務是後臺的,也就是說如果系統需要殺死它們來回收更多的內存(比如到 在網頁瀏覽器中顯示一個大頁面),那麼它們可以被殺死,而不會太傷害。

更多信息,可以發現here

+0

如何知道您的服務是否真正作爲前臺服務啓動? logcat中是否有任何痕跡? – Alex 2011-01-21 22:56:28

+1

服務是否處於前臺或後臺取決於兩個因素:服務狀態和您啓動它的方式。 http://developer.android.com/reference/android/app/Service.html#ProcessLifecycle – 2012-09-18 17:22:55

14

脫穎而出地面: - 該過程位於的onPause()和的onResume()... IE瀏覽器播放音樂播放器並按下暫停和播放

背景: - 在沒有用戶交互的情況下運行的過程,例如接收消息,來電,接收郵件,設置鬧鐘......這裏使用的方法是onStart()和onStop() 例如: - 在手機上檢查它。在系統時鐘r時,在上午6:30創建鬧鐘消滅上午6點30分火災..爲了殺死警報服務..只是去 - 菜單 - >設置 - >應用程序 - >運行服務 - 點擊停止服務...它停止報警服務甚至您的系統達到不會觸發的時間

相關問題