FileProvider的权限路径

FileProvider的权限路径

在“ res ” 文件夹中,新建“xml” 文件夹。然后再“ res/xml ”文件夹中,新建“ file_paths.xml ”文件,用于设置FileProvider的全线路径。

<?xml version="1.0" encoding="utf-8"?>
<paths>
    <external-media-path name="cache_images" path="C0801"/>
</paths>
    

表示的路径为 Context.getExternalMediaDirs()+”C0801″,Context.getExternalMediaDirs()的文件夹可以添加到系统相册中并进行展示。

      Android7.0(api level 24)禁止对内外部(跨越应用分享)公开file:// ,若使用file://格式共享文件,会抛出FileUriExposedException异常,因此需要使用FileProvider类生成content://类型的URI分享,并且为其提供临时的文件访问权限。

      在AndroidManifest.xml文件中使用<provider>标签声明访问路径,具体的路径保存在XML中。在xml文件中使用<paths>作为顶层标签,<paths>子标签指定文件夹。<paths>子标签的name属性石path属性指定路径的替代名称,用于隐藏真实的目录;

<paths>子标签的path属性表示指定路径下的共享目录。常用的<paths>子标签如下:

  • <file-path>表示Context.getFilesDir()所指向的目录
  • <cache-path>表示Context.getCacheDir()所指向的目录
  • <external-path>表示Environment.getExternalStorageDirectory()所指向的目录
  • <external-file-path>表示Context.getExternalFileDir()所指向的目录
  • <external-media-path>表示Context.getExternalMediaDir()所指向的目录(从 API leval 21 版本开始支持)

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/114962.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号