如果我有ACCESS_FINE_LOCATION了,我可以省略ACCESS_COARSE_LOCAT

2019-07-21 05:47发布

我已经请求GPS应用ACCESS_FINE_LOCATION许可清单中的,现在我想添加一个库(MoPub)需要ACCESS_COARSE_LOCATION

我是正确的假设, ACCESS_FINE_LOCATION就足够了,我可以离开了ACCESS_COARSE_LOCATION从我的表现?

Answer 1:

https://developer.android.com/guide/topics/location/strategies.html#Permission

注:如果您使用的两个NETWORK_PROVIDER和GPS_PROVIDER,那么你只需要请求ACCESS_FINE_LOCATION权限,因为它包括两个供应商的许可。 (许可ACCESS_COARSE_LOCATION包括许可只为NETWORK_PROVIDER。)

简而言之:是的,你不需要ACCESS_COARSE_LOCATION如果你已经定义ACCESS_FINE_LOCATION



Answer 2:

取决于你的需要。

权限明智的, ACCESS_FINE_LOCATION包括ACCESS_COARSE_LOCATION 。 然而,有一个问题:

ACCESS_COARSE_LOCATION给你最后已知位置是电池友好https://developer.android.com/training/location/retrieve-current.html#setup
例如,如果您的应用程序不会像基于位置的建议,最后已知位置是不够好。
对谷歌播放服务依赖

但是,如果你需要的东西一样一样口袋妖怪去住/实时定位,使用ACCESS_FINE_LOCATION
它给你的生活/实时位置。 你需要使用一个LocationListener
我最后一次检查, 这并不需要谷歌播放服务



文章来源: If I have ACCESS_FINE_LOCATION already, can I omit ACCESS_COARSE_LOCATION?