[英]How to create a directory in root android external storage?
我想為通過我的應用程序保存的圖像創建一個單獨的目錄。 但我不知道我的代碼哪里有不足。 這就是我在外部存儲的根目錄中創建一個新目錄的操作:
File root = Environment.getExternalStorageDirectory();
File directory = new File(root,"MYFOLDER");
if(!directory.exists()) {
directory.mkdirs();
}
我已經在我的應用程序清單文件中添加了<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
權限。 我已經嘗試過這個, 這個, 這個和其他,但沒有任何效果。
我用這個有效:
private static final String IMAGE_DIRECTORY = "/mydirectory";
File Directory = new File(
Environment.getExternalStorageDirectory() + IMAGE_DIRECTORY);
if (!Directory.exists()) {
Directory.mkdirs();
}
首先通過添加此行來授予運行時存儲權限,因為在android oreo之后您需要授予運行時訪問存儲權限
if (ContextCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}, 1);
}
那么你可以使用這個代碼
File apkStorage = new File(Environment.getExternalStorageDirectory() + "/" + "TestFolder");
if (!apkStorage.exists()) {
apkStorage.mkdir();
Log.e(TAG, "Directory Created.");
}
將 requestLegacyExternalStorage="true" 添加到清單文件中的應用程序標記
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.