【问题标题】:Android 11 - access file in private storageAndroid 11 - 访问私有存储中的文件
【发布时间】:2021-09-11 19:32:29
【问题描述】:

应该可以访问私人存储。所以我对一个测试应用做了一个简单的测试。稍后我将迁移所有其他不错的应用程序。

我将一个文件从我的桌面放到 /Android/data/nl.xyz.myapp/files/example.json。

刚刚做了一个快速测试来访问数据:

File file = new File(MainActivity.mainActivity.getFilesDir(), "example.json");

从文件中读取得到一个空字符串。哦?

使用 getFilesDir() 列出文件时,我看到那里只有一个 .Fabric 文件。我不记得把那样的文件放在那里了 ;-)

如何通过从私有存储中的文件中读取数据来使这个简单的测试成功?

【问题讨论】:

    标签: android android-11


    【解决方案1】:

    您的代码正在尝试从internal storage 读取。你的位置在external storage

    首先将您的代码替换为:

    File file = new File(MainActivity.mainActivity.getExternalFilesDir(null), "example.json");
    

    一旦你有这个工作,摆脱MainActivity中的静态mainActivity字段,这样你就摆脱了内存泄漏。

    【讨论】:

    • Tx,经过这个快速测试后,我们会采取适当的步骤来进行真正的迁移。
    猜你喜欢
    • 1970-01-01
    • 2019-01-25
    • 2017-03-19
    • 1970-01-01
    • 1970-01-01
    • 2020-10-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多