在android中从/data文件夹(使用chmod 744)读取文件

Read file from /data folder (with chmod 744) in android

提问人:Saman Sattari 提问时间:6/14/2023 更新时间:6/14/2023 访问量:38

问:

我有一个 root 设备,并在根目录上添加了一个名为的文件。 然后我使用以下 adb 命令将其权限更改为 744:test.txt/data

adb shell su -c 'chmod 744 /data/test.txt'

命令后,权限更改为
现在我想用以下代码读取该文件:
-rwxr--r--

                    val file = File("/data/test.txt")
                    val text = StringBuilder()
                    try {
                        val reader = BufferedReader(FileReader(file))
                        var line: String?
                        while (reader.readLine().also { line = it } != null) {
                            text.append(line)
                            text.append('\n')
                        }
                        reader.close()
                        showText(text.toString())
                    } catch (e: Exception) {
                        logE(e)
                    }

但它给了我这个例外:

java.io.FileNotFoundException: /data/test.txt: open failed: EACCES (Permission denied)

现在我知道有些库可以读取具有 744 权限的文件,例如 AppsFlyer: AppsFlyer 出厂预装 正如您在文档中看到的那样,它提到:

制造商将 pre_install.appsflyer 放在其选择的文件路径中。pre_install.appsflyer文件权限应设置为744。

那么,我怎样才能像 AppsFlyer 库一样读取这些数据呢?

Android chmod rooted-device read-data appsflyer-android-sdk

评论


答: 暂无答案