首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android mkdirs()无法工作

Android mkdirs()无法工作
EN

Stack Overflow用户
提问于 2017-04-25 21:04:51
回答 3查看 2.8K关注 0票数 1

我试图在我的手机存储(不是SD卡)中生成一个包含我的android应用程序的文件夹,但我的mkdirs()无法工作。

我已经在清单中设置了android.permission.WRITE_EXTERNAL_STORAGE,并使用了以下基本代码:

代码语言:javascript
复制
    File mediaStorageDir = new File(Environment.getExternalStorageDirectory(), "/MyDirName");

    if (!mediaStorageDir.exists()) {
        if (!mediaStorageDir.mkdirs()) {
            Log.d("App", "failed to create directory");
        }
    }

但它不起作用。mkdirs始终为false,并且不创建文件夹。

我已经尝试了所有的方法,看了所有关于它的话题,但都不起作用,我也不知道为什么。

EN

回答 3

Stack Overflow用户

发布于 2017-04-25 21:11:30

如果您的目标和编译sdk高于lolipop,请参阅this链接

代码语言:javascript
复制
File sourcePath = Environment.getExternalStorageDirectory();

                File path = new File(sourcePath + "/" + Constants.DIR_NAME + "/");

                path.mkdir();
票数 3
EN

Stack Overflow用户

发布于 2021-07-09 15:33:47

如果您是Android Studio的模拟器和设备文件资源管理器,请确保右键单击模拟器的文件夹,然后单击“synchronize”以更新显示的文件。设备文件资源管理器不会自动实时更新。

票数 0
EN

Stack Overflow用户

发布于 2022-02-17 15:37:54

在为android API29和更高版本编写代码时,请在应用程序清单(AndroidManifest.xml)中使用以下权限

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE"/>

然后在java文件中添加以下代码行

代码语言:javascript
复制
    `ActivityCompat.requestPermissions(this, new String[]
                    {
                            Manifest.permission.READ_EXTERNAL_STORAGE,
                            Manifest.permission.WRITE_EXTERNAL_STORAGE
                    },
            PackageManager.PERMISSION_GRANTED);

    StrictMode.VmPolicy.Builder builder = new StrictMode.VmPolicy.Builder();
    StrictMode.setVmPolicy(builder.build());

    file = new File(Environment.getExternalStorageDirectory().getPath(), "MyDirName/");
    if (!file.exists()) {
        try {
            file.mkdirs();
        } catch (Exception e) {
            e.printStackTrace();
        }

    }

`

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43611526

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档