欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

Android7以上读写/data/data下其他APP私有文件的注意点

程序员文章站 2022-08-03 19:51:01
这里写自定义目录标题问题来源主要问题最终解决办法问题来源主要是因为从Android7以上,安卓的权限开始变得很严格了,还加入了selinux,导致APP读写另外一个APP的私有文件很难(前提是有Root权限,没有更难,这里不说)主要问题在网上搜到的各种文章中,都说明了要使用root权限来先修改文件的权限,chmod 777 /data/data/xxx.xxx.app/xxx.txt很多只有这一条,但实际测试,这样即使这个文件存在,但依然会报没有权限。百度到File 的canRead()方法还有...

这里写自定义目录标题

问题来源

主要是因为从Android7以上,安卓的权限开始变得很严格了,还加入了selinux,导致APP读写另外一个APP的私有文件很难(前提是有Root权限,没有更难,这里不说)

主要问题

在网上搜到的各种文章中,都说明了要使用root权限来先修改文件的权限,chmod 777 /data/data/xxx.xxx.app/xxx.txt
很多只有这一条,但实际测试,这样即使这个文件存在,但依然会报没有权限。
百度到File 的canRead()方法还有说总是返回false的bug,不确定真假。
然后搜到有使用File.getParent(),然后再chmod 777改目录权限,我也试了,还是没用。。。。

最终解决办法

最终使用debug,测试从/data/data/ 到目标文件的目录,发现/data/data/ 目录默认有权限,后面就没有权限,在给以后的每个层级目录都给予权限,这时候终于正常了。。。
这里水一篇,记录下这个坑

本文地址:https://blog.csdn.net/qq_32969313/article/details/107359552