首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >安卓getExternalFilesDir权限

安卓getExternalFilesDir权限
EN

Stack Overflow用户
提问于 2014-05-08 01:06:10
回答 2查看 2K关注 0票数 2

我知道对于Android4.4,你可以使用这种方法在外部存储中创建“应用程序特定的”文件夹。

代码语言:javascript
复制
getExternalFilesDir("myfiles").getAbsolutePath();

它创建了文件夹/storage/sdcard/Android/data/com.abc.zyz/files/myfiles

然而,以这种方式(我更喜欢)创建它是否安全,而不需要额外的文件夹"files"?

代码语言:javascript
复制
String mfolder = Environment.getExternalStorageDirectory().getPath() + "/Android/data/" + getPackageName() + "/myfiles";
File sd = new File(mfolder);
if(!sd.exists() || !sd.isDirectory()) {
sd.mkdirs();
}

我已经在API19模拟器上运行了它,文件夹是使用这两种方法创建的,但我担心在实际设备上使用第二种首选方法创建文件夹时,可能会出现权限问题。

有没有人可以建议或测试一下Kitkat设备?

EN

回答 2

Stack Overflow用户

发布于 2016-04-05 15:38:22

代码语言:javascript
复制
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"
                 android:maxSdkVersion="18"/>

这将允许您在18之前的SDK需要权限时写入外部存储(即保存文件),之后不需要权限。我知道这个问题已经发布很久了,但我认为答案可能会对其他人有所帮助,因为我花了一段时间才找到这个问题。

票数 5
EN

Stack Overflow用户

发布于 2014-05-08 03:36:40

当我以这种方式阅读时,也遇到了类似的问题。在4.4之前运行良好,但在4.4上它不喜欢它。

将以下内容添加到您的AndroidManifest.xml文件:

代码语言:javascript
复制
 <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

对我很管用。如果对你有帮助,请让我知道!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23524007

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档