Android系统。提示访问设备的位置

时间:2016-06-14 20:46:46

标签: android android-gps

在我的旧Android(三星S3迷你)中,没有必要做任何事情以允许我的应用程序使用我的手机的位置(GPS)。 现在我使用的是带有Android 6.0的LG G4,并且它没有使用GPS。 我可以看到,在像waze这样的应用中,有一个提示"允许Waze访问此设备的位置?"。我想在开始我的应用程序之前我必须做类似的事情来触发这个选项。 任何人都知道如何做到这一点。我不知道如何问谷歌。 提前谢谢。

1 个答案:

答案 0 :(得分:2)

在Android 6.0上,您必须在运行时请求一些权限。它在这里解释https://developer.android.com/training/permissions/requesting.html

  

从Android 6.0(API级别23)开始,用户授予权限   应用程序运行时的应用程序,而非安装应用程序时的应用程序。

对于运行时的请求权限,您应该执行以下操作(在您想要使用GPS之前):

if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION)
                != PackageManager.PERMISSION_GRANTED) {
    // Check Permissions Now
    private static final int REQUEST_LOCATION = 2;

    if (ActivityCompat.shouldShowRequestPermissionRationale(this,
                    Manifest.permission.ACCESS_FINE_LOCATION)) {
        // Display UI and wait for user interaction
    } else {
        ActivityCompat.requestPermissions(
              this, new String[]{Manifest.permission.LOCATION_FINE},
    ACCESS_FINE_LOCATION);
    }
} else {
    // permission has been granted, continue as usual
    Location myLocation =
        LocationServices.FusedLocationApi.getLastLocation(mGoogleApiClient);
}

您在这里有一个GPS示例https://developers.google.com/android/guides/permissions