小编Zhe*_*ryu的帖子

Android READ_EXTERNAL_STORAGE权限无效

我正在尝试创建一个简单的应用程序,可以从Gallery应用程序获取图像并将其显示在imageButton上.我在运行Android 5.0.1的手机上使用API​​ 21进行测试.不幸的是,无论我尝试什么,我都会遇到安全错误 - 即使我指定了权限.

我获取图像的代码是:

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent imageReturnedIntent){
    super.onActivityResult(requestCode, resultCode, imageReturnedIntent);

    switch(requestCode){
        case PICK_IMAGE_REQUEST:
            if(resultCode == RESULT_OK && imageReturnedIntent != null && imageReturnedIntent.getData() != null) {
                Uri uri = imageReturnedIntent.getData();
                try {
                    Bitmap bitmap = MediaStore.Images.Media.getBitmap(getContentResolver(), uri);
                    // Log.d(TAG, String.valueOf(bitmap));
                    ImageButton ib = (ImageButton) findViewById(R.id.inputImg);
                    ib.setImageBitmap(bitmap);
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            break;
    }
}
Run Code Online (Sandbox Code Playgroud)

当我尝试从Dropbox中选择图像时代码有效,但是当我从图库中选择图像时,我得到了

java.lang.SecurityException: Permission Denial: reading com.android.providers.media.MediaProvider uri content://media/external/images/media/35634 from pid=25240, uid=10070 requires android.permission.READ_EXTERNAL_STORAGE, or grantUriPermission()
Run Code Online (Sandbox Code Playgroud)

我为READ_EXTERNAL_STORAGE制作了一个使用权限标记: …

java android android-gallery android-permissions android-5.0-lollipop

12
推荐指数
1
解决办法
3万
查看次数