当位置提供程序启用或禁用时,是否有可能获得通知,而实际上没有查找设备的位置(因为这样做可能会占用很多电量)?
答案 0 :(得分:1)
在android中有LocationListener接口,它提供了一个抽象方法onProviderEnabled(String provider)。因此,您已创建自己的侦听器并实现onProviderEnabled(String provider)方法。您的听众必须向位置管理员注册。
如果与上述相同,则在启用位置提供程序时将自动调用onProviderEnabled(字符串提供程序)。
答案 1 :(得分:0)
Locationmanager.isProviderEnabled()似乎不需要实际查找位置。它不会太高效,因为你需要轮询它,但它比获得实际位置更好。
实际上,在阅读有关该主题的更多内容后,您似乎可以使用requestLocationUpdates()来执行此操作。当启用或禁用提供程序时,它将向您发送包含KEY_PROVIDER_ENABLED
的捆绑包。您可以将通知的最小时间和距离设置为极高值。这样,您偶尔会获得位置通知,而且大部分只是启用/禁用通知。