【发布时间】:2016-06-01 00:37:57
【问题描述】:
我实际上能够拍摄照片并将其保存在 android 外部存储 DCIM 文件夹中。
我的问题是我无法在其中创建新文件夹,所以 DCIM/MyPic.jpg 变成了 DCIM/MyFolder/MyPic.jpg。
这是我的源代码:
File f = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM), "address");
if (!f.exists()) {
f.mkdir();
}
File file = new File(Environment.getExternalStorageDirectory()
+ File.separator
+ "DCIM"
+ File.separator
+ "address"
+ File.separator
, "IMG_001.jpg");
请注意,我在清单中正确请求了 WRITE_EXTERNAL_STORAGE 权限。
拍摄照片的意图部分很好,因为我可以将它直接保存到 DCIM。
我没有收到任何错误消息,但没有任何反应...没有创建“地址”文件夹:(
感谢您的帮助:D
【问题讨论】:
-
您在哪个目标平台上运行?
-
Min : 15, Target : 23。我可以提一下 f.mkdir() 总是返回 false。
-
我读了这篇文章,但它并没有帮助我解决我的问题:stackoverflow.com/questions/7212559/android-mkdir-returns-false
-
您需要根据 API 23 + 的新权限模型以编程方式请求权限。
-
没有解决问题。已授予许可。如果没有,我无法直接在 DCIM 中保存文件,但我可以。
标签: android