在 SD 卡上写入日志

问题描述

我想像这样写日志到SD卡

String filePath = "/storage/FC30-3DA9" + "/logs" + "/logcat.txt";

在清单中

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

我从用户那里请求它们。 我可以从卡中读取文件,但无法写入。当我尝试写入文件时,我的权限被拒绝。 路径 Environment.getExternalStorageDirectory() 通向手机的内部存储器。我有root。

解决方法

是的。由于 Android Kitkat 可移动 micro SD 卡是只读的。

只有在 Android 11 设备上,它们才能再次写入。

但有一个例外:卡上的应用特定目录。

查看 getExternalFilesDirs() 返回的第二项。

如果您改用存储访问框架,您的应用可以随处写入。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...