我一直在基於位置的應用程序,一切除了位置實施,這是核心點確定。Android的最佳定位監聽器實現
我知道的位置是非常昂貴的,但我不能考慮到電池消耗處理這個問題。
這是我目前的算法:
步驟1:創建1分鐘的時間間隔報警經理。
步驟2:當警報被觸發時,開始位置的聽者
if(settings.getBoolean("use_gps", false))
manager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, listener);
manager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 0, 0,listener);
manager.requestLocationUpdates(LocationManager.PASSIVE_PROVIDER, 0, 0,listener);
步驟3:等待15秒的最大值用於位置
步驟4:當接收到一個位置,停止位置監聽器。
其中一個問題是由於:0秒鐘位置精度爲0米時,CPU使用率大幅增加 - 當報警觸發時,CPU使用率增加45%,報警時間爲0-15秒。
但是,當我看到我的應用程序的電池使用,電池的使用增加,1-2小時後,不符合預期:電池的使用僅約4% - 5%。
第二個問題是當用戶想通過GPS獲得自己的位置。由於通過GPS獲取位置需要很長時間,與從網絡提供商獲取位置相比,我無法通過GPS獲取位置。
我已經實現了很多不同的方法後實現了這個算法。
我找的人誰也通過與低CPU使用率GPS成功地實施了定期的位置獲取建議。