如何使用GooglePlayServices上的新SettingsApi请求“高准确度”位置?

时间:2015-04-20 18:00:52

标签: android google-play-services android-location

我正在尝试使用GooglePlayServices中的新SettingsApi(https://developer.android.com/reference/com/google/android/gms/location/SettingsApi.html)来检测是否需要更改用户设置,而无需退出应用。

我的问题是对话框出现了,但它只是说它需要Wifi和互联网才能访问位置。我还希望它能够请求GPS(这是高精度模式或仅设备模式)。

获取LocationSettingsRequest的代码:

public static LocationSettingsRequest getHighPriorityLocationSettingsRequest() {
        LocationRequest locationRequest = LocationRequest.create();
        locationRequest.setFastestInterval(FASTEST_INTERVAL);
        locationRequest.setInterval(UPDATE_INTERVAL_ACTIVE);
        locationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);

        return new LocationSettingsRequest.Builder()
                .addLocationRequest(locationRequest)
                .setAlwaysShow(true)
                .build();
    }

谢谢!

1 个答案:

答案 0 :(得分:0)

该对话框仅列出将您的位置设置置于更优化状态所需的更改。因此,在以下情况下它不会要求您提供GPS:

  • 您的设备无法使用GPS,或
  • GPS已经开启。

顺便说一下,FASTEST_INTERVALUPDATE_INTERVAL_ACTIVE都不会对该对话框产生任何影响。