我无法获得内存扩展SD卡的Android 6写入权限。我收到异常“Permission denied”。我正在使用Android 6,targetSdkVersion 24,同时显示了使用权限请求和WRITE_EXTERNAL_STORAGE的运行时权限请求。我获得onRequestPermissionsResult()的ok权限重播。
我可以从这张SD卡读取,但我没有写信给它。我使用的是三星note 4,6.0.1。我正在尝试写入文件:“/ storage / 3530-3464 / my_file.txt”,我可以使用相同的路径读取此文件。我在这一行上得到例外:
File file = new File(SD1_StoragefilePath);
FileOutputStream fop = new FileOutputStream(file); // get permission exception here.
清单:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
运行时权限:
ActivityCompat.requestPermissions(this,
new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE},
PERMISSION_REQ_REPLAY_WRITE_EXTERNAL_STORAGE);
答案 0 :(得分:1)
感谢您的帮助greenapps。 使用SAF实现:
Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT_TREE);
startActivityForResult(intent, REQUEST_CODE_STORAGE_ACCESS);
我可以对整个SD卡进行写访问。 有两个问题: