我正在编写一个应用程序,通过短信查找手机的位置。我使用短信广播接收器,当正确的短信进来时,获取唤醒锁,然后启动定位服务,从GPS和网络请求位置更新。在第一个 onLocationChanged 上,我将位置发送给请求者,停止服务并释放锁定。
我想知道android总是调用 onLocationChanged 吗?或者当它找不到设备的位置(例如设备在室内)时,它不会被称为从不?
调用此函数非常重要,因为如果不是,则在电池电量耗尽之前不会释放锁定。在那种情况下,还有其他方法可以完成服务吗?
还有什么,剂量定位服务需要电源锁定吗?
答案 0 :(得分:1)
是的,如果它无法获得GPS锁定,它将永远不会调用onLocationChanged。除非你想保持屏幕不亮我不认为你需要拿着唤醒锁 - 我相信GPS系统会在手机被唤醒时给你打电话。