Android - When using LocationManager.requestLocationUpdates, do I need a WakeLock?

折月煮酒 提交于 2019-12-09 08:40:53

问题


My app periodically checks the location using an alarm to a BroastcastReceiver that starts a service. I know I should acquire a wakelock before I start the service but my question is when can I release it?

If I release the wakelock after calling requestLocationUpdates, can the device go to sleep and not call my LocationListener or will the device always wake to deliver updates and stay awake until the callback has returned? I'm reluctant to hold onto the wakelock because that would prevent the device from sleeping between updates until I'm done with the location.


回答1:


So based on my experience (and confirmed in the comments here), releasing the wake lock after after calling requestLocationUpdates doesn't seem to be a problem. Unfortunately, the only way to get a definitive answer is to ask a platform developer, but I've received no response.




回答2:


check for power saving mode in Android system settings: it must be disable to permit location manager to generate update location when the screen is off; tested on Samsung A5; I took two days to find this solution :-)



来源:https://stackoverflow.com/questions/3814852/android-when-using-locationmanager-requestlocationupdates-do-i-need-a-wakeloc

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!