使外部目录成为android
在android应用程序的外部存储中创建目录时,我使用以下代码:使外部目录成为android,android,mkdir,mkdirs,Android,Mkdir,Mkdirs,在android应用程序的外部存储中创建目录时,我使用以下代码: File mDirectory = new File(Environment.getExternalStorageDirectory() + "/myDir"); if (!mDirectory.exists()) { mDirectory.mkdirs(); if (!mDirectory.mkdirs()) { Log.e("
File mDirectory = new File(Environment.getExternalStorageDirectory() + "/myDir");
if (!mDirectory.exists()) {
mDirectory.mkdirs();
if (!mDirectory.mkdirs()) {
Log.e("App", "failed to create directory");
}
}
但是没有创建目录,并且一直在logcat
中显示错误消息:
App: failed to create directory
我还同时使用了mkdir()
和mkdirs()
,但结果是相同的。错在哪里
更新:
AndroidManifest.xml
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
您正在调用mkdirs
两次。第一个调用创建目录。第二个调用返回false,因为目录已经存在。您正在调用mkdirs
两次。第一个调用创建目录。第二次调用返回false,因为目录已经存在。您运行此应用程序的Android版本是什么?这句引自《圣经》的话是这样说的
如果设备运行的是Android 6.0(API级别23)或更高版本,并且应用程序的targetSdkVersion为23或更高版本,应用程序会在运行时向用户请求权限。用户可以随时撤销权限,因此应用程序需要在每次运行时检查是否具有权限
如果设备运行的是Android 5.1(API级别22)或更低版本,或者应用程序的targetSdkVersion为22或更低版本,则系统会在用户安装应用程序时要求用户授予权限
现在有了一个概念。这是用户在运行时需要授予的权限,WRITE\u EXTERNAL\u STORAGE
就是其中之一
Android Dev网站上的这篇文章将教您如何在运行时请求权限您运行此应用程序的Android版本是什么?这句引自《圣经》的话是这样说的 如果设备运行的是Android 6.0(API级别23)或更高版本,并且应用程序的targetSdkVersion为23或更高版本,应用程序会在运行时向用户请求权限。用户可以随时撤销权限,因此应用程序需要在每次运行时检查是否具有权限 如果设备运行的是Android 5.1(API级别22)或更低版本,或者应用程序的targetSdkVersion为22或更低版本,则系统会在用户安装应用程序时要求用户授予权限 现在有了一个概念。这是用户在运行时需要授予的权限,
WRITE\u EXTERNAL\u STORAGE
就是其中之一
Android Dev网站上的这篇文章将教您如何在运行时请求权限设备存储名称中没有任何目录myDir您有权限吗?请注意,请求权限后,此答案仍然有效。设备存储名称
myDir
中没有任何目录。您有权限吗?请注意,请求权限后,此答案仍然有效。