Android 6 请求权限
Android 6 requesting a permission
在 android 6 我正在请求使用存储空间的权限。
现在,当用户拒绝我的请求时,我想向他显示一个对话框,解释为什么应用程序需要权限才能获得他的许可。
如何做到这一点?
是否有任何内置对话框,如使用请求权限方法时弹出的对话框?
执行以下操作:
/**
* Permission check for Marshmallow
*/
public void checkMallowPermissions() {
if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.M &&
ContextCompat.checkSelfPermission(
getApplicationContext(), Manifest.permission.WRITE_EXTERNAL_STORAGE
) != PackageManager.PERMISSION_GRANTED) {
if(!ActivityCompat.shouldShowRequestPermissionRationale(this,
Manifest.permission.WRITE_EXTERNAL_STORAGE) ||
checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE) !=
PackageManager.PERMISSION_GRANTED)
ActivityCompat.requestPermissions(this,
new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE},
PERMISSION_REQUEST_CODE);
}
if(checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE) !=
PackageManager.PERMISSION_GRANTED) {
// Show your dialog
}
}
最好在请求权限之前显示自定义对话框,这样用户就可以决定是接受还是拒绝权限。
你可以使用这个
int hasReadPermission = checkSelfPermission(Manifest.permission.READ_EXTERNAL_STORAGE);
if (hasReadPermission != PackageManager.PERMISSION_GRANTED) {
//show your custom dialog regarding why you need this permission
}
当用户点击对话框按钮时,使用
显示权限对话框
requestPermissions(new String[]{Manifest.permission.READ_EXTERNAL_STORAGE},
50);
在 android 6 我正在请求使用存储空间的权限。 现在,当用户拒绝我的请求时,我想向他显示一个对话框,解释为什么应用程序需要权限才能获得他的许可。
如何做到这一点?
是否有任何内置对话框,如使用请求权限方法时弹出的对话框?
执行以下操作:
/**
* Permission check for Marshmallow
*/
public void checkMallowPermissions() {
if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.M &&
ContextCompat.checkSelfPermission(
getApplicationContext(), Manifest.permission.WRITE_EXTERNAL_STORAGE
) != PackageManager.PERMISSION_GRANTED) {
if(!ActivityCompat.shouldShowRequestPermissionRationale(this,
Manifest.permission.WRITE_EXTERNAL_STORAGE) ||
checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE) !=
PackageManager.PERMISSION_GRANTED)
ActivityCompat.requestPermissions(this,
new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE},
PERMISSION_REQUEST_CODE);
}
if(checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE) !=
PackageManager.PERMISSION_GRANTED) {
// Show your dialog
}
}
最好在请求权限之前显示自定义对话框,这样用户就可以决定是接受还是拒绝权限。
你可以使用这个
int hasReadPermission = checkSelfPermission(Manifest.permission.READ_EXTERNAL_STORAGE);
if (hasReadPermission != PackageManager.PERMISSION_GRANTED) {
//show your custom dialog regarding why you need this permission
}
当用户点击对话框按钮时,使用
显示权限对话框requestPermissions(new String[]{Manifest.permission.READ_EXTERNAL_STORAGE},
50);