Android Manifest Permissions
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
Java文件(首次尝试)
String path = Environment.getExternalStorageDirectory().getAbsolutePath() + "/newAppFolder";
File dir = new File(path);
dir.mkdirs();
Java文件(第二次尝试)
String state = Environment.getExternalStorageState();
if(Environment.MEDIA_MOUNTED.equals(state)) {
File dir = new File(Environment.getExternalStorageDirectory(), "newAppFolder");
if(!dir.exists()) {
dir.mkdirs();
Toast.makeText(getApplicationContext(), "Folder Created", Toast.LENGTH_LONG).show();
}
else
Toast.makeText(getApplicationContext(), "Folder exists", Toast.LENGTH_LONG).show();
}
else
Toast.makeText(getApplicationContext(), "SD Card Not Found", Toast.LENGTH_LONG).show();
不幸的是,两次尝试都没有创建我需要的newAppFolder文件。有人可以告诉我我做错了吗?
注意:在第二次尝试中,应用程序toast一直显示Folder Created
答案 0 :(得分:0)
从Android 6.0开始( API级别23 ),用户在应用运行时向应用授予权限,而不是在安装应用时授予权限。
如果你的目标sdk是23,你应该检查this link并查看在运行时请求权限是否修复它。