首页 > 解决方案 > 即使声明并授予了 WRITE_EXTERNAL_STORAGE 也获得“权限被拒绝”

问题描述

我有一个需要将文件写入外部存储的应用程序。在清单中我添加了

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

在我打电话的活动中

ActivityCompat.requestPermissions(this, STORAGE_PERMISSIONS, PERMISSION_REQUEST_RW_EXTERNAL_STORAGE);

在哪里:

private static final int PERMISSION_REQUEST_RW_EXTERNAL_STORAGE = 783;
private static final String[] STORAGE_PERMISSIONS = new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.READ_EXTERNAL_STORAGE};

当然,我正在授予一切,我可以在“onRequestPermissionsResult”中看到应用程序收到的授予。毕竟,当尝试在外部存储中创建文件时,我的权限被拒绝。

java.io.IOException: Permission denied

运行:

Android 8 (Oreo)
compileSdkVersion 27
minSdkVersion 23
targetSdkVersion 27

编辑:我正在尝试编写此目录:/storage/emulated/0/6666-6433/DCIM/Camera/。在以前的状态中,我在本地存储中列出视频文件并在此目录中获取文件。使用此路径读取文件按预期工作。

标签: androidandroid-permissionsandroid-8.0-oreo

解决方案


推荐阅读