Android,即使授予权限[重复],创建文件的权限也被拒绝

问题描述 投票:0回答:1

我正在三星设备上使用API​​ 29(Android 10)进行测试。我想创建一个简单的txt文件。单击按钮时将执行此方法。

private void createFile() {
    String path = getExternalFilesDir(null).toString();
    path = path.substring(0, path.indexOf("/Android"));

    Toast.makeText(getApplicationContext(), "Creating " + path + "/MyFiles/File.txt", Toast.LENGTH_LONG).show();

    File file = new File(path + "/MyFiles/File.txt");
    try {
        file.createNewFile();
    } catch (IOException e) {
        e.printStackTrace();
    }
}

但是我在指令file.createNewFile()上收到此错误:

2019-12-13 00:54:18.945 26573-26573/com.... W/System.err: java.io.IOException: Permission denied

我认为我的AndroidManifest没问题

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com...">

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

    <application...

我已授予设置中的所有权限

enter image description here

android file permissions ioexception permission-denied
1个回答
1
投票

请确保您在现有目录中创建文件。另外,您可能需要在运行时按照API> = 23的要求请求权限。

请参见https://developer.android.com/training/permissions/requesting

© www.soinside.com 2019 - 2024. All rights reserved.