我懷疑如果我使用報警管理器啓動定期服務並從活動的onCreate方法啓動服務。如果一次又一次啓動該服務,我該如何防止服務多次觸發。Android定期後臺服務
-1
A
回答
0
假設你正在創建一個普通Service
(而不是IntentService
),按了Android Service
documentation,當應用程序調用startService
電話,服務將被實例化和啓動(如果需要爲它創造的過程)。
另外,如果它正在運行,那麼它仍然在運行。
所以,把它簡單地說,「開始」的服務
生命週期是獨立於已啓動該服務 活動的生命週期。這是真實的,不論 天氣都在同一進程或不同進程中運行
因此,即使您的Activity
可能會得到創建多次,如果Service
之前創建仍在運行,則服務對象已經存在意志被重用。
但是,如果有onCreate()
的startService()
調用Activity
,這將每次調用onStartCommand()
。
因此,你需要確保你有適當的代碼/邏輯,因爲我明白你必須做在任的onCreate /在onStart和的onStop或的onResume和onPaused東西來處理onStartCommand()
0
多次調用據。通過做一些我的意思是,在onCreate創建你所需要的,警報管理器等,然後在onStart你可以啓動服務,並在onStop停止服務或解除綁定,以防你想要一個前臺服務。或onResume或onStop。 看看這裏:
https://github.com/toaderandrei/live_tracking/blob/master/app/src/main/java/com/ant/track/activities/ServiceConnectActivity.java。
這是一款基於谷歌MyTracks應用程序的追蹤應用程序。
相關問題
- 1. Android - 定期後臺服務
- 2. Android後臺服務
- 3. Android後臺服務
- 4. Android後臺服務
- 5. Android後臺服務
- 6. Android服務定期在後臺執行任務嗎?
- 7. Android的 - 定期進行後臺服務 - 諮詢
- 8. Android:如何在後臺服務中定期運行AsyncTask
- 9. 服務器爲Android的後臺服務?
- 10. Android的後臺服務
- 11. 兩個後臺服務android
- 12. Android TrafficStats後臺服務?
- 13. Android後臺服務和AlarmManager
- 14. Android服務在後臺
- 15. 與Android的後臺服務
- 16. android的後臺服務(Xamarin)
- 17. Android後臺服務與AlarmManager
- 18. Android後臺服務問題
- 19. 如何使用android服務定期在後臺調用Web服務?
- 20. 具有後臺任務的Android服務
- 21. 在後臺運行服務器上的定期任務
- 22. 帶通知的Android預定後臺/前臺服務
- 23. Android後臺任務和生命週期
- 24. 在Android活動期間停止後臺服務
- 25. Android O後臺服務生命週期影響RxJava Observable?
- 26. GPS服務在後臺運行(Android)
- 27. Android的後臺服務程序
- 28. 連續的Android後臺服務
- 29. Android服務未在後臺運行?
- 30. Android後臺服務不斷重啓
你能顯示代碼嗎? – AADProgramming