2014-09-05 67 views
0

我一直在爲我的應用程序放置一個好的架構時遇到麻煩。它需要定期更新GPS(我已經創建了聽衆,具有更新頻率的正確參數)。Android永久GPS請求

當我嘗試確定代碼的設置位置時,問題就出現了:它應該放在類似服務的地方,因爲我想保留它在後臺,但似乎服務在主線程上保持運行。此外,我需要確定的是,即使該應用程序被殺害,我也不會失去GPS更新。

因此,解決方案似乎是以下幾點:

  1. 服務(能不能在後臺運行?)是註冊一個監聽器,並保持運行。某種報警,如果它殺死
  2. 報警,設置了此服務,任何觸發每隔X分鐘,註冊監聽器,等待它的響應,並關閉等待下一個信號

哪種策略應該是更好?當我需要做長時間的任務(比如無限期地接收定期數據)時,有沒有什麼好的做法?

預先感謝您

回答

0

您可以在自己的過程中運行您的服務。 請參閱「服務流程」,在http://developer.android.com/guide/components/processes-and-threads.html

您在清單中爲您安排服務額外的過程中,看到了android:process attribut的service標籤的 http://developer.android.com/guide/topics/manifest/service-element.html

+0

它可以確保如果我的服務做一些密集的東西,它將不會顯示「這個應用程序沒有響應,你想關閉它?」的對話框? – Isaac 2014-09-05 08:10:45