【问题标题】:External Storage Write Access for Kitkat devicesKitkat 设备的外部存储写入访问
【发布时间】:2015-02-05 19:37:50
【问题描述】:

问题

我的应用程序支持 4.0+,而且都是关于文件处理的。它在除 Kitkat 之外的所有 Android 版本中都能完美运行。

在 Kitkat 中,我的应用无法修改或写入 SD 卡中的任何文件。但我看到各种应用,例如,

1) 实体资源管理器 2) ES 文件资源管理器 3) 扫描仪 4) UC浏览器

即使在 Kitkat 设备中,所有这些应用程序都提供对 SD 卡的写访问权限,甚至无需 root 访问权限。

要求

我需要一种功能齐全的方法来创建或修改存储在 Kitkat 中 SD 卡中的文件。我似乎给很多用户带来了麻烦,一个合适的解决方案会帮助很多像我这样的开发者。

【问题讨论】:

  • ES 文件资源管理器肯定不提供此功能。您可以通过在搭载 Android 4.4+ 的设备(例如 SONY Xperia Tablet Z2)上安装并运行它,然后尝试将文件复制到可移动媒体来判断。操作将失败,ES File Explorer 错误对话框将指出writing to removable media is not possible。我想你引用的其他工具也会有同样的限制,就像你的应用一样。
  • 另外,需要明确的是,从 Android SDK 的角度来看,external storage 不是 removable storage
  • 我的应用程序获得许可的地方被拒绝尝试在 kitkat ES 文件资源管理器下的可移动媒体上写入。我也想知道他们是怎么做到的。
  • @CommonsWare 非常感谢这些令人惊叹的系列帖子。他们消除了很多关于 Android 存储的困惑。非常感谢。
  • @CommonsWare 但我现在刚刚测试,在 Moto E、Solid Explorer 和 ES Explorer 等设备中能够完美地创建、复制、重命名、删除文件。如果您能给我们一些关于他们如何做到的见解,那将非常有帮助?如果您能帮助我们提供一些有用的代码,那就更好了。提前致谢。

标签: android file android-4.4-kitkat android-sdcard


【解决方案1】:

是的,我也遇到过这个问题。在网上大量阅读之后,解决方案是只在您的应用文件夹中写入(例如:/sdcard/Android/data/packagename)。

关于这些应用,在我的 s4 mini 上,es explorer 无法从外部 sdcard 中删除,所以我认为因设备而异。

如果设备被路由,请更改权限以在 sdcard 上的任何位置获得写入权限。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-07-05
    • 2015-02-08
    • 1970-01-01
    • 1970-01-01
    • 2016-11-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多