首页 > 技术文章 > FileProvider 添加二级目录

fengfenghuifei 2018-10-29 13:22 原文

我们在做Android N升级适配的时候

传统的Intent调用文件的方式会被认为不安全的

然后系统需要让我们使用更加安全的FileProvider的方法去构建intent请求

如 拍照,安装新的apk包等等。。。

这样的适配方法网上很多

Manifest里声明provider ,xml设置文件目录,代码里获取uri,intent里设置uri,然后使用

我这里要说的是我们如何设置二级目录

因为xml里各种path的构建只允许出现一级目录的如 TestAPKPath,这样的

不允许出现TestAPKPath/Img这样

所以方法就是在构建文件的时候,在文件的目录上写上二级域名

File file = new File(“xxxx/TestApkPath/Img”);

Uri uri = FileProvider.getUri("xxx.xxx.provider",file);

这样我们就完成了将file存储到二级目录的效果

ok完成了

推荐阅读