【发布时间】:2015-11-11 15:00:14
【问题描述】:
我的 mkdirs 函数有问题。查看我的权限清单
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="xxxxxx"
android:versionCode="15"
android:versionName="3.1.1508">
<!-- Global permissions -->
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
还有我的代码
String APP_PATH_SD_CARD = "/xxxxx";
String fullPath = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES) + APP_PATH_SD_CARD;
if(!Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState())){
ToastDressmup.make(this, "External SD card not mounted", 0, ToastAction.CLOSE.getValue()).show();
}
try {
File dir = new File(fullPath);
if (!dir.exists()) {
dir.mkdirs();
}
==> My file doesn't exist
SD 卡已安装。我不明白。我在互联网上阅读了很多答案,但仍然是错误的。
我在模拟器(使用模拟 SD 卡)和 Nexus 5 上进行了测试,但它不起作用。在我的 HTC One X 上它可以工作,为什么?!我很绝望
谢谢大家! G.
【问题讨论】:
-
谢谢!但是他们的解决方案并不能解决我的问题:(我在每个目录上都测试了 mkdirs()、mkdir,无论是否使用模拟器。我没有更多的想法 :(
-
如果您使用的是Android6,请在此处查看easyspeek的答案。权限处理已更改。
标签: android