繁体   English   中英

在清单和运行时允许读写权限后,权限被拒绝

[英]Permission denied after allowing read and write permissions in manifest and runtime

我收到了这个错误

   W/System.err: java.io.FileNotFoundException: /root/storage/emulated/0/DCIM/Camera/IMG_20181116_172404.jpg (Permission denied) 

我在清单中添加了以下内容:

    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>

在MainActivity.java中添加了以下代码

    final private int REQUEST_CODE_ASK_PERMISSIONS = 123;
    private void checkIfPermissionGranted() {
        if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.M) {
            int hasWritePermission = checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE);
            int hasReadPermission = checkSelfPermission(Manifest.permission.READ_EXTERNAL_STORAGE);
            if(hasWritePermission != PackageManager.PERMISSION_GRANTED){
                requestPermissions(new String[] {Manifest.permission.WRITE_EXTERNAL_STORAGE},
                        REQUEST_CODE_ASK_PERMISSIONS);
                return;
            }
            if(hasReadPermission != PackageManager.PERMISSION_GRANTED){
                requestPermissions(new String[] {Manifest.permission.READ_EXTERNAL_STORAGE},
                        REQUEST_CODE_ASK_PERMISSIONS);
                return;
            }
        }

    }

我该如何解决? 以下是设置菜单中应用权限的屏幕截图

  // Implement this overide method..

    @Override
    public void onRequestPermissionsResult(int requestCode, String[] permissions,
                                           int[] grantResults) 
{

        if (grantResults[0] == PackageManager.PERMISSION_GRANTED && grantResults[1] == PackageManager.PERMISSION_GRANTED) {


    //  implement Your File related Code here,

        } else {
            Toast.makeText(this, "Permission is Require for Access External Storage", Toast.LENGTH_SHORT).show();
        }

    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM