0
我無法創建這個簡單的代碼目錄:安卓:創建目錄失敗
public class ExternalStorage {
private final String BACKUPS_DIR = "MyDir";
public String createBackupDir() {
if (!isExternalStorageWritable()) {
Log.e("MyApp", "Storage not writable");
return null;
}
String path = Environment.getExternalStorageDirectory() +
File.separator + BACKUPS_DIR;
File folder = new File(path);
boolean success = true;
if (!folder.exists())
success = folder.mkdirs();
if (success)
return path;
Log.e("MyApp", "Backup Dir: creation failed");
return null;
}
/* Checks if external storage is available for read and write */
public boolean isExternalStorageWritable() {
String state = Environment.getExternalStorageState();
return Environment.MEDIA_MOUNTED.equals(state);
}
/* Checks if external storage is available to at least read */
public boolean isExternalStorageReadable() {
String state = Environment.getExternalStorageState();
return Environment.MEDIA_MOUNTED.equals(state) ||
Environment.MEDIA_MOUNTED_READ_ONLY.equals(state);
}
}
Environment.getExternalStorageDirectory()的返回值是:
/storage/emulated/0
日誌是:
MyApp : Backup Dir: creation failed
艙單的權限是:
個<android:uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<android:uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
mkdirs只返回假的,我不明白是什麼發生,任何幫助將不勝感激
艙單權限是: <機器人:使用的許可機器人:名稱= 「android.permission.WRITE_EXTERNAL_STORAGE」/> <機器人:使用的許可機器人:名稱= 「android.permission.READ_EXTERNAL_STORAGE」/> –
是意識到無論目錄是否創建,您的日誌都會被執行。 – Opiatefuchs
另外請注意,從android 6你必須手動接受'應用程序信息'屏幕的權限。 (不知道這是否適用於你測試這個版本的Android?) – namingFailed