Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/222.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 我的应用程序没有';t在从google play store下载时请求权限。我在清单文件中指定了位置权限_Android_Android Studio_Android Permissions - Fatal编程技术网

Android 我的应用程序没有';t在从google play store下载时请求权限。我在清单文件中指定了位置权限

Android 我的应用程序没有';t在从google play store下载时请求权限。我在清单文件中指定了位置权限,android,android-studio,android-permissions,Android,Android Studio,Android Permissions,Mainifest文件 <?xml version="1.0" encoding="utf-8"?> 我的应用程序需要位置权限我以为google play store在下载时会询问,但用户必须手动设置位置。google play store应该以什么方式询问我应该在代码中添加什么?如果您运行的是android API 23或更高版本,则需要在以下位置请求权限。要请求权限,您应该在使用使用权限的功能之前进行: int MY_PERMISSIONS_REQUEST_LOCA

Mainifest文件

<?xml version="1.0" encoding="utf-8"?>



我的应用程序需要位置权限我以为google play store在下载时会询问,但用户必须手动设置位置。google play store应该以什么方式询问我应该在代码中添加什么?

如果您运行的是android API 23或更高版本,则需要在以下位置请求权限。要请求权限,您应该在使用使用权限的功能之前进行:

int MY_PERMISSIONS_REQUEST_LOCATION = 123;
if (ContextCompat.checkSelfPermission(thisActivity,
        Manifest.permission.ACCESS_FINE_LOCATION)
        != PackageManager.PERMISSION_GRANTED) {
    //app doesn't have permission yet

     ActivityCompat.requestPermissions(thisActivity,
                new String[]{Manifest.permission.ACCESS_FINE_LOCATION},
                MY_PERMISSIONS_REQUEST_LOCATION);
} else {
    // Permission has already been granted
}
public void onRequestPermissionsResult(int requestCode,
        String permissions[], int[] grantResults) {
    switch (requestCode) {
        case MY_PERMISSIONS_REQUEST_LOCATION: {

            if (grantResults.length > 0
                && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
                // permission was granted
            } else {
                // permission denied
            }
            return;
        }

    }
}
然后覆盖onRequestPermissionsResult以查看用户是否已授予该权限:

int MY_PERMISSIONS_REQUEST_LOCATION = 123;
if (ContextCompat.checkSelfPermission(thisActivity,
        Manifest.permission.ACCESS_FINE_LOCATION)
        != PackageManager.PERMISSION_GRANTED) {
    //app doesn't have permission yet

     ActivityCompat.requestPermissions(thisActivity,
                new String[]{Manifest.permission.ACCESS_FINE_LOCATION},
                MY_PERMISSIONS_REQUEST_LOCATION);
} else {
    // Permission has already been granted
}
public void onRequestPermissionsResult(int requestCode,
        String permissions[], int[] grantResults) {
    switch (requestCode) {
        case MY_PERMISSIONS_REQUEST_LOCATION: {

            if (grantResults.length > 0
                && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
                // permission was granted
            } else {
                // permission denied
            }
            return;
        }

    }
}

什么是-->我的权限请求位置对不起,这是一个简单的整型变量对不起,我不明白该如何使用这个变量?我已经在onCreate方法中粘贴了您提供的代码。第一个错误是-MY\u PERMISSIONS\u REQUEST\u location您需要在onCreate外部声明它,我已经编辑了答案,您可以看到:)您能告诉我如何使用运行时权限启用gps定位吗?