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