Android 6上的EACCES(权限被拒绝),已授予权限

Android 6上的EACCES(权限被拒绝),已授予权限,android,permissions,android-sdcard,android-permissions,android-6.0-marshmallow,Android,Permissions,Android Sdcard,Android Permissions,Android 6.0 Marshmallow,我正在尝试将响应库保存到外部SD卡,但出现以下错误: java.io.IOException: open failed: EACCES (Permission denied) at java.io.File.createNewFile(File.java:939) at my.app.package.utils.DocumentFileUtils.saveDocument(DocumentFileUtils.java:120) 这是失败的方法: public static String

我正在尝试将
响应库
保存到外部
SD卡
,但出现以下错误:

 java.io.IOException: open failed: EACCES (Permission denied)
 at java.io.File.createNewFile(File.java:939)
 at my.app.package.utils.DocumentFileUtils.saveDocument(DocumentFileUtils.java:120)
这是失败的方法:

public static String saveDocument(String filename, ResponseBody responseBody) {
    Logs.document("Saving file " + filename);
    File file = createFile(filename);
    Logs.document("Full path: " + file.getAbsolutePath());
    if (!file.exists()) {
        try {
            file.getParentFile()
                .mkdirs();
            file.createNewFile(); //Exception happens here
        } catch (IOException e) {
            e.printStackTrace();
            return null;
        }
    }

    try {
        BufferedSource source = responseBody.source();
        BufferedSink sink = Okio.buffer(Okio.sink(file));

        sink.writeAll(source);
        sink.close();
        responseBody.close();
        return file.getAbsolutePath();
    } catch (Exception e) {
        responseBody.close();
        e.printStackTrace();
        if (file.exists()) file.delete();
        return null;
    }
}
使用createFile创建的文件具有以下路径:

/mnt/media_rw/0123-4567/Android/data/my.app.package/files/document_files/file_name.ext
我在
清单
中拥有
写入外部存储
权限,并且作为运行时权限,授予该权限(我还可以从应用程序信息中检查)


我遗漏了什么吗?

你解决过这个问题吗?没有,我选择了不同的路线,我记不起是哪条了。