android – 权限READ_EXTERNAL_STORAGE始终被拒绝

android – 权限READ_EXTERNAL_STORAGE始终被拒绝,第1张

概述我正在尝试使用 Android 6.0请求运行时权限. 这是我的代码: private void enablePermission() { String[] PERMISSIONS = { Manifest.permission.READ_EXTERNAL_STORAGE}; if (!hasPermissions(this, PERMISSIONS)) { Ac 我正在尝试使用 Android 6.0请求运行时权限.
这是我的代码:

private voID enablePermission() {    String[] PERMISSIONS = { Manifest.permission.READ_EXTERNAL_STORAGE};    if (!hasPermissions(this,PERMISSIONS)) {        ActivityCompat.requestPermissions(this,PERMISSIONS,PERMISSION_ALL);    }}public static boolean hasPermissions(Context context,String... permissions) {    for (String permission : permissions) {        if (ContextCompat.checkSelfPermission(context,permission) !=                PackageManager.PERMISSION_GRANTED) {            return false;        }    }    return true;}@OverrIDepublic voID onRequestPermissionsResult(int requestCode,String[]        permissions,int[] grantResults) {    switch (requestCode) {        case PERMISSION_ALL:            if (grantResults.length > 0 && grantResults[0] ==                    PackageManager.PERMISSION_GRANTED) {                Log.d("Permission","Granted");            } else {                Log.d("Permission","DenIEd");            }    }}

它总是在onRequestPermissionsResult中告诉我“权限被拒绝”.我尝试使用ACCESS_FINE_LOCATION这个代码,它工作正常.

解决方法 尝试在您的权限上添加androID包.像这样(这是写外部存储):

public  boolean isstoragePermissionGranted() {    if (Build.VERSION.SDK_INT >= 23) {        if (checkSelfPermission(androID.Manifest.permission. READ_EXTERNAL_STORAGE)                == PackageManager.PERMISSION_GRANTED) {            Log.v(TAG,"Permission is granted");            return true;        } else {            Log.v(TAG,"Permission is revoked");            ActivityCompat.requestPermissions(this,new String[]{Manifest.permission. READ_EXTERNAL_STORAGE},1);            return false;        }    }    else { //permission is automatically granted on sdk<23 upon installation        Log.v(TAG,"Permission is granted");        return true;    }}

回调:

@OverrIDe    public voID onRequestPermissionsResult(int requestCode,String[] permissions,int[] grantResults) {        super.onRequestPermissionsResult(requestCode,permissions,grantResults);        if(grantResults[0]== PackageManager.PERMISSION_GRANTED){            Log.v(TAG,"Permission: "+permissions[0]+ "was "+grantResults[0]);            //resume tasks needing this permission        }    }

有关详细信息,请参阅此SO answer.

总结

以上是内存溢出为你收集整理的android – 权限READ_EXTERNAL_STORAGE始终被拒绝全部内容,希望文章能够帮你解决android – 权限READ_EXTERNAL_STORAGE始终被拒绝所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1128042.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-30
下一篇2022-05-30

发表评论

登录后才能评论

评论列表(0条)

    保存