搜索
首页Java即使有权限,也无法为我的应用程序创建目录或文件

php小编草莓为您解答Java编程中常见问题:即使具有权限,也无法为应用程序创建目录或文件的情况。这种问题可能出现在操作系统权限设置、文件路径错误、文件已存在等方面。通过排查文件路径、检查操作系统权限、确保文件不存在等方法,可以解决这一问题,确保程序正常运行。如果您遇到类似情况,不妨尝试以上方法看看是否能解决您的困扰。

问题内容

我有一个几年前制作的应用程序。最近我只是重新编译了它,做了很少的更改,这样我就可以更改目标 sdk 并且仍然在 play 商店中列出。

事实证明,这从根本上破坏了某些手机(包括我自己的手机)中的应用程序。在上传之前,我在另一部手机上对其进行了测试,并且运行良好(android 版本 8.1.0)。我的手机运行的是 android 11(无法运行)。

问题似乎在于在内部存储中创建和读取文件的能力,而应用程序的重点是维护单个文件。

这是我尝试创建目录的函数。这只是我在创建时调用的测试函数,它不是原始应用程序的一部分:

public static void AttemptDirCreate(){
    String dirname = Environment.getExternalStorageDirectory().toString() + "/this_is_a_test";
    File dir = new File(dirname);

    System.err.println("Attempting to create directory: '" + dirname + "'");

    boolean make_result = false;
    if (!dir.exists()) {
        try {
            make_result = dir.mkdir();
        }
        catch (SecurityException se) {
            System.err.println("ERROR. Could not make dir. Reason: " + se.getMessage());
        }
    }

    if (make_result){
        System.err.println("MKDir result is true");
    }
    else {
        System.err.println("MKDir result is false");
    }

    if (dir.exists()){
        System.err.println("Dir has been created");
    }
    else {
        System.err.println("Was unable to create dir");
    }

}

问题是没有创建目录并且没有抛出异常。当我进入应用程序信息时,我看到文件和媒体的权限。

尝试创建目录的路径是:'/storage/emulated/0/this_is_a_test'

据我所知,这是正确的路径。该应用程序在首次安装时确实询问了我的权限。

那么为什么它不能创建目录呢?如何找出问题并解决它?

澄清一下,这个完全相同的功能适用于 android 8.1.0,但不适用于 android 11。不确定,截止点是什么。

解决方法

您无法在 Android 11+ 设备的外部存储根目录中创建文件和目录。

而是使用已有的公共目录之一。

喜欢 DCIM、图片、文档...

以上是即使有权限,也无法为我的应用程序创建目录或文件的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文转载于:stackoverflow。如有侵权,请联系admin@php.cn删除

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 个月前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
1 个月前By尊渡假赌尊渡假赌尊渡假赌
威尔R.E.P.O.有交叉游戏吗?
1 个月前By尊渡假赌尊渡假赌尊渡假赌

热工具

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )专业的PHP集成开发工具

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

将Eclipse与SAP NetWeaver应用服务器集成。

SublimeText3 英文版

SublimeText3 英文版

推荐:为Win版本,支持代码提示!

Atom编辑器mac版下载

Atom编辑器mac版下载

最流行的的开源编辑器

Dreamweaver Mac版

Dreamweaver Mac版

视觉化网页开发工具