我想開發一個應用程序 - 一項服務 - 將用戶位置更新爲服務器,例如每1小時更新一次。實現位置更新服務的最佳方式
我從Android文檔,我不得不使用「機器人服務」明白,我必須做的onStartCommand()
的工作,但因爲我需要不斷地發送這些位置更新每隔1小時,然後我需要在onStartCommand()
內運行無限循環...對不對?
現在,我的問題是:
如果系統殺死服務會發生什麼,我知道我的服務將開始,但它會叫
onStartCommand()
也?是否有更好的方法來實現位置更新,例如系統每隔1小時週期性地調用
onStartCommand()
方法是否可能?
對不起,延遲應對...昨天我非常疲倦,我不得不在發佈問題後去睡覺。無論如何,我會檢查報警管理器的例子,我會回傳我的發現。謝謝。 – user836026 2012-07-24 06:53:25
我發現這個鏈接上的Alarm exmaple也非常有幫助。 https://github.com/commonsguy/cw-advandroid/tree/master/SystemServices/Alarm – user836026 2012-07-24 21:47:38
另一個提示。您可能需要發送stickyBroadcast。發送警報時sendStickyBroadcast(intent)。即使服務停止,這些廣播仍然存在。你然後在廣播上註冊一個空接收器來檢查它的最後值是什麼。可能也可以在SharedPreferences中存儲信息。 – 2012-07-24 21:53:20