当仅请求COARSE_LOCATION时,Android仍然会使用GPS来提取位置吗?

Bar*_*pes 3 permissions android

我想弄清楚我是否真的需要请求ACCESS_FINE_LOCATION.我不需要真正准确的坐标.但是,如果无法使用手机信号塔或WiFi,我希望能够从GPS获取位置(精度很低).但是,我在Android文档中找不到关于此的明确答案.以下是Android Docs所说的内容(ACCESS_COARSE_LOCATION).它告诉我,请求粗略位置给我提供来自"Cell-ID,WiFi"源的信息,并且请求精确许可将使用GPS,但它没有说明GPS只是粗略位置许可时的任何类型的后备请求.

public static final String ACCESS_COARSE_LOCATION

自:API级别1

允许应用程序访问粗略(例如,Cell-ID,WiFi)位置

常量值:"android.permission.ACCESS_COARSE_LOCATION"

public static final String ACCESS_FINE_LOCATION

自:API级别1

允许应用程序访问精细(例如,GPS)位置

常量值:"android.permission.ACCESS_FINE_LOCATION"

Bar*_*pes 6

我认为这篇文章及其引用的Android文档回答了这个问题.Android文档说明如下.

注意:如果您同时使用NETWORK_PROVIDER和GPS_PROVIDER,则只需要请求ACCESS_FINE_LOCATION权限,因为它包含两个提供程序的权限.(ACCESS_COARSE_LOCATION的权限仅包含NETWORK_PROVIDER的权限.)

因此,如果我正确阅读,请求ACCESS_COARSE_LOCATION无法从GPS中提取,因为它不会请求访问GPS_PROVIDER.