【发布时间】:2015-01-25 17:53:37
【问题描述】:
这是我的代码
File selfieLocation = new File(getExternalFilesDir(Environment.DIRECTORY_PICTURES),
"Daily Selfies");
boolean isDirectory = false;
if(!selfieLocation.isDirectory()) {
//Creates directory named by this file
selfieLocation.mkdir();
isDirectory = selfieLocation.isDirectory();
}
//array of strings
for(String selfiePath: selfieLocation.list()) {
selfies.add(selfiePath);
}
基本上,我要做的是在标准目录中创建自己的可自定义目录,用于放置用户可用的图片。
我查看了相关线程并看到了这个,Android: unable to create a directory in default pictures folder。但是,我确保我调用了 getExternal....,而不仅仅是将 Environment.DIRECTORY_PICTURES 作为参数。 我还查看了http://developer.android.com/guide/topics/data/data-storage.html#filesExternal 并看到我有正确的方法调用/格式来在外部存储器中创建一个可自定义的文件夹。文档示例是
File file = new File(Environment.getExternalStoragePublicDirectory(
Environment.DIRECTORY_PICTURES), albumName);
if (!file.mkdirs()) {
Log.e(LOG_TAG, "Directory not created");
}
我单步执行了我的代码,发现即使在调用 selfieLocation.mkdir() 之后,局部变量 isDirectory 仍保持为 false。有谁知道这个目录为什么不能创建?
【问题讨论】: