【问题标题】:Android write to secondary external storage (Permission denied)Android 写入辅助外部存储(权限被拒绝)
【发布时间】:2020-10-31 22:56:20
【问题描述】:

当我尝试写入辅助外部存储(SD 卡)中的文件时,我收到以下错误:

java.io.FileNotFoundException: /storage/70F7-83E4/file.txt (Permission denied)

我已将以下权限添加到我的清单中:

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

我也在运行时请求权限。 我还从 SDK 30 降级到 SDK 28,并尝试将以下内容添加到清单文件中:

 android:requestLegacyExternalStorage="true"

我不明白我做错了什么,但我仍然无法写入辅助外部存储(SD 卡)。

【问题讨论】:

    标签: android file-permissions filenotfoundexception android-sdcard permission-denied


    【解决方案1】:

    自 Android Kitkat 以来,可移动 micro SD 卡不可写。

    除了一个应用特定的目录。

    【讨论】:

    • 但是我在 Play 商店中看到的许多应用程序都能够写入外部存储上的任何位置。
    • 是吗?你不准确。可以到一些外部存储位置。但是对于可移动的微型 SD 卡?没有。你在哪里看到的?
    • Play 商店有 Byte Mobile 的文本编辑器:play.google.com/store/apps/…。例如,此应用程序可以完美地写入可移动微型 SD 卡。
    • 每个应用程序都可以使用经典文件系统代码写入可移动 micro sd 卡上自己的应用程序特定目录。并使用 Storage Access Framework 代码对整个卡片进行处理。您的应用程序也可以。您不需要任何正手许可。
    • 我研究了存储访问框架。我现在也可以写入辅助外部存储(SD 卡)上的文件。但是,我还需要能够选择仅具有自定义文件扩展名 (.fgz) 的文件。有什么方法可以用 SAF 处理这个问题?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-12-26
    • 2023-03-11
    • 1970-01-01
    • 2023-04-01
    • 2017-12-21
    • 1970-01-01
    • 2016-11-15
    相关资源
    最近更新 更多