【发布时间】:2016-02-01 11:20:44
【问题描述】:
基于从 Android 4.4(API 级别 19)开始的 google 文档,Android 应用不需要 WRITE_EXTERNAL_STORAGE 权限即可写入其自己的应用程序特定目录。 uses-permission
所以我删除了 API 19 的这个权限:
<uses-permission
android:name="android.permission.WRITE_EXTERNAL_STORAGE"
android:maxSdkVersion="18" />
但在发布应用程序后,我们发现一些 API > 18 的 android 设备(不是全部)有问题,应用程序无法写入自己的应用程序特定目录。 我删除了 android:maxSdkVersion 并再次发布了应用程序并解决了问题。
这怎么可能? 我应该怎么做才能删除此权限并且我的应用程序可以在所有设备上运行?
【问题讨论】:
-
当您的应用程序想要写入外部存储上自己的应用程序特定目录(由 getExternalFilesDir() 提供的目录)时,您的应用程序不再需要请求 WRITE_EXTERNAL_STORAGE 权限。参考stackoverflow.com/questions/23073416/…
-
感谢您的回复。正如我所提到的,并非所有设备都有问题,而且我确信我从未访问过其他需要权限的目录;只是我的应用程序特定目录
-
请提供minimal, complete, and verifiable example 证明您的问题。在这种情况下,它将包括 Java 堆栈跟踪、触发该堆栈跟踪的代码以及正在崩溃的设备模型的细节。
标签: android permissions manifest