将Android手机更新为6.0(API级别23)后,我遇到了同样的问题。以下解决方案对我有效。希望它也对您有帮助。
请检查您的Android版本。如果> = 6.0(API级别23),则不仅需要包括
在您的AndroidManifest.xml中,但还需要在调用mkdir()之前请求权限。代码快照。
public static final int MY_PERMISSIONS_REQUEST_WRITE_EXTERNAL_STORAGE = 1;
public int mkFolder(String folderName){ // make a folder under Environment.DIRECTORY_DCIM
String state = Environment.getExternalStorageState();
if (!Environment.MEDIA_MOUNTED.equals(state)){
Log.d("myAppName", "Error: external storage is unavailable");
return 0;
}
if (Environment.MEDIA_MOUNTED_READ_ONLY.equals(state)) {
Log.d("myAppName", "Error: external storage is read only.");
return 0;
}
Log.d("myAppName", "External storage is not read only or unavailable");
if (ContextCompat.checkSelfPermissio