2017-07-08 100 views
0

我有一個後臺服務,它使用PendingIntent在後臺跟蹤設備位置運行。管理GoogleApiClient的最佳實踐

該服務調用mFusedLocationClient.requestLocationUpdates(mLocationRequest, locationRequest, pendingIntent)開始位置跟蹤,但有時也會更新位置跟蹤(更改更新頻率)。

我應該將GoogleApiClient實例存儲在服務類中,還是每次需要時都應該連接到它?

  • 我擔心如果我存儲它,可能會出現斷開連接。這在理論上應該不成問題,因爲文檔說GoogleApiClient會自動嘗試重新連接。

  • 如果我每次連接到GoogleApiClient,它會在代碼中增加一點複雜性,因爲與connect()進行的連接是異步的。

根據你的經驗,你認爲最好的是什麼?

回答

0

您應該致電googleApiClient.connect()您的活動onStart()googleApiClient.disconnect()onStop()。你可以實現GoogleApiClient.ConnectionCallbacks,它會讓你知道客戶端是否通過調用public void onConnected(Bundle bundle)成功連接,然後你可以訪問你的api。

+0

謝謝。我更新了描述。我有一個後臺服務。我很擔心斷線。 –