Ell*_*tus 8 android location locationmanager
我理解的意思GPS_PROVIDER(位置来自GPS信号)和NETWORK_PROVIDER(位置从手机信号塔和无线接入点确定),但我不明白的意思PASSIVE_PROVIDER,尽管API中的定义:
用于接收位置而不实际启动位置修复的特殊位置提供程序.当其他应用程序或服务请求时,此提供程序可用于被动地接收位置更新,而无需自己实际请求位置.此提供程序将返回其他提供程序生成的位置.您可以查询getProvider()方法以确定位置更新的来源.需要权限android.permission.ACCESS_FINE_LOCATION,但如果未启用GPS,则此提供程序可能只返回粗略修复.
为什么要使用它而不是其他提供者?为了节省电池寿命?如果某个其他应用程序显式请求来自真实提供程序的数据,被动提供程序是否仅返回有用信息,或者从此请求位置始终是安全的?
Jan*_*usz 18
此提供程序对于与用户位置一起使用但不希望浪费电池寿命的服务非常有用,如您所指出的那样.
例如,谷歌纵横将您当前的位置发送到网络服务,让您的朋友知道您的位置.如果此服务每5分钟请求一次GPS修复,则设备电池将非常快地清空.如果服务请求被动位置提供者,则每次启动Google地图时都会发送位置,并且修复获取或某些其他应用启动位置提供商更新,并且该服务可以对位置数据执行操作,而无需在位置更新上花费额外的电力.
如果您在准确的时刻需要正确的位置数据,使用此提供商将无济于事.对于大多数未在后台服务中运行的内容,此位置提供程序无用,因为只有在其他应用程序触发用户位置更新时,它才会发送更新.
| 归档时间: |
|
| 查看次数: |
6532 次 |
| 最近记录: |