FileProvider,是Android 7.0新增的一个类,该类位于v4包下的android.support.v4.content.FileProvider,使用方法和ContentProvider类似,操作步骤如下: 一、在资源文件夹res/xml下新建file_provider.xml文件,文件声明权限请求的路径,代码如下: 属性说明: 指定文件存储的区块和区块的相对路径
这里的path要对应上相关路径,这里是想根目录,不指定特别目录,所以直接用 0即可。 1根标签下可以添加的子标签也是有限的,除了上述的提到的这个子标签外,还包括下面几个:
示例: 所以生成指定文件的Content URI的步骤:
除了普通的授权,还有一种是Intent发送对外授权,对外提供可访问的Content URI,在重写的startActivityResult()方法中获取授予临时权限的Content URI或向用户提供可访问的接口来获取文件,后面的这种方式获取文件后转换成Content URI。
生成Content URI的临时授权:
二、AndroidManifest.xml 添加组件 provider 相关信息,类似组件 activity ,指定resource属性引用上一步创建的xml文件(后面会详细介绍各个属性的用法),代码如下: |