Android - When using LocationManager.requestLocationUpdates, do I need a WakeLock?
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.
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.
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 :-)
精彩评论