为什么 ACCESS_COARSE_LOCATION 需要定位必须启用

why ACCESS_COARSE_LOCATION needs to location must be enabled

我正在尝试以低电量消耗且没有 GPS(位置)的方式获取用户位置。毫米坐标对我来说不是必需的。所以我决定使用

<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>

并且在这个 google 开发者文档 https://developer.android.com/guide/topics/location/strategies.html 中它说:

Permission for ACCESS_COARSE_LOCATION allows access only to NETWORK_PROVIDER.

我真的不明白为什么这个 API 在没有启用位置的情况下不给用户当前坐标。在我看来,如果我使用 COARSE_LOCATİON 而不是 FINE_LOCATION,那么 API 不应该使用 location.

我也在尝试 "Basic Location Sample" https://github.com/googlesamples/android-play-location/tree/master/BasicLocationSample

您正在请求用户的 LOCATION,它可能是 FINE LOCATION 或 COURSE LOCATION。用户需要授权应用才能执行此操作。

唯一的区别是设备将花费更少的能量来尝试获取用户的位置,并且不会获取准确的位置。