2011-08-04 23 views
0

我創建了一個迄今爲止工作得很好的Android應用程序。它包含一個本地服務,負責每隔幾分鐘獲取用戶位置,並通過UDP將其轉發到收集服務器,該收集服務器將顯示在Web應用程序地圖上。總是使用GPS的Android服務

除非用戶明確註銷應用程序,否則應用程序需要不斷運行。目前,操作系統似乎正在關閉服務並根據需要重新啓動服務。我可以看到這一點,因爲通常它會每隔2分鐘報告一次它的位置。相反,這些區間存在差距。

因此,我正在尋找一些建議,告訴我如何編寫一項服務(不幸的是,電池的費用)始終保持運行狀態,並將位置服務集中到足以發送2分鐘間隔的準確修復。

到目前爲止,我有一個良好的工作代碼基地,所以如果展示我現在在代碼的位置會有所幫助,請不要猶豫,問。

在此先感謝那些伸出援助之手。

回答

0

最好的辦法是用AlarmManager每兩分鐘醒來一次,做一些處理,然後快速回到睡眠狀態。

如果您認爲自己是硬核,甚至可以使用wake lock,但這樣可以保持手機的CPU不受任何憐憫地持續開啓。你不想那樣。