繁体   English   中英

如何在root android外部存储中创建目录?

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM