2025年文件管理器无法访问data(文件管理器无法访问andro/data)

文件管理器无法访问data(文件管理器无法访问andro/data)svg xmlns http www w3 org 2000 svg style display none svg

大家好,我是讯享网,很高兴认识大家。



 <svg xmlns="http://www.w3.org/2000/svg" style="display: none;"> <path stroke-linecap="round" d="M5,0 0,2.5 5,5z" id="raphael-marker-block" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"></path> </svg> <p>本文从Sky233’s Blog复制过来</p> 

讯享网

我最近在开发一个Android项目的时候,需要用到这个权限访问某个文件,但我在网络上没有找到一个很好且易懂的解决方法,因此写了这篇博文。

在Android上有一个叫做SAF(Storage Access Framework)的储存访问框架
而这个框架的访问权限较高,可以直接访问Android/data目录
因此可以通过这个方式来访问Android/data目录
仅需通过这个框架来获取Android/data目录的权限即可访问目录


如果手机安卓版本为Android10的时候,可以在AndroidManifest.xml中添加下列代码

讯享网

REQUEST_CODE_FOR_DIR是一个int变量,为一个固定的数,用于回调

onActivityResult回调方法中加入下列代码

 

并合适的地方调用下面的代码

讯享网

这时会发现这样一个界面

讯享网

Google官方提供了一个工具类库Documentfile

我们可以通过这个类来操作文件,例如查看文件是否存在,删除文件和浏览目录
下面是添加类的方法


 

要使用这个库,我们需要创建一个uri,我这里提供一个方法可以转换path为uri

讯享网
 

但我们还是没有读写文件,因此我们需要另外一种方法,
例如我需要读取在Android/data目录下的某个txt文件
我只需要这样写:

讯享网

在Android11以**问Android/data目录还是很简单的
Documentfile的用法可以参考Google的官方文档
用法也是比较简单,因为我的项目用不到太多,所以我就只研究了这点
希望能对你有帮助(/ω\)



小讯
上一篇 2025-04-20 09:08
下一篇 2025-05-09 20:11

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/181432.html