2016-01-31 74 views
1

我的服務記錄了用戶的位置並每隔X分鐘將其發送到Firebase。我曾嘗試將X從1分鐘改爲5分鐘,但電池消耗的變化不到1%。在這兩種情況下,應用程序每3小時使用約5%的應用程序。Android GPS錄製服務的電池漏電問題

我想了解如何增加500%的GPS間隔對電池壽命幾乎沒有影響或沒有影響。不僅GPS會在1/5的時間內發射,而且還有1/5的數據被髮送/接收到Firebase。

當觀看位置被關閉,電池消耗爲0

任何想法是什麼原因造成的漏?另外,爲了每5分鐘獲取一個GPS位置併發送大約50個字節的數據,我應該尋找什麼樣的電量消耗?

+0

正在清理註釋... –

回答

1

立即關注的是您如何連接到Firebase。請記住,從撥打new Firebase(...)那一刻起,Firebase就會保持與服務器的開放連接。如果您只想定期發送/收聽數據,您將不必要地耗盡電量。

您可以用編程方式管理與goOffline()/goOnline()的連接狀態。

如果您只發送更新,則可以使用Firebase REST API來編寫更新。這不會保持開放的連接,或者至少將其留給Android來確定何時關閉連接。

0

原來主要原因是移動數據。一旦我要求WiFi使用Firebase,電池消耗從每天20%下降到2%。