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 版本开始支持)

 

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

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 数据库锁表如何解决_mysql数据库怎么解锁

    数据库锁表如何解决_mysql数据库怎么解锁这个问题之前遇到过一次,但是由于不知道导致锁表的原因,也没细想,就知道表被锁了,然后让别人把表给解锁了。但是前天的一次操作,让我亲眼见证了导致锁表的过程,以及如何给lock的表解锁。1.导致锁表的原因(同志们也可以参考是不是也是同样的操作啊。。。):1.1首先是大前提我们正常的框架在service层都会有事物控制,比如我一个service层的方法要执行更新两张表,这两个表只有同…

    2022年8月23日
    6
  • Android preference_android:orientation=”vertical”

    Android preference_android:orientation=”vertical”【正文】一、PreferenceFragment的引入:PreferenceActivity是一个非常有用的基类,当我们开发Android项目时避免不了选项设置,这些设置习惯用Preference来保存。Android专门为这种Activity提供了便捷的基类PreferenceActivity。如果继承自Preference则不需要自己控制Preference的读写,Preference

    2025年9月27日
    2
  • Spark Streaming详解(重点窗口计算)

    Spark Streaming详解(重点窗口计算)前面有几篇关于SparkStreaming的博客,那会只是作为Spark入门,快速体验Spark之用,只是照着葫芦画瓢。本文结合Spark官网上SparkStreaming的编程指南对SparkStreaming进行介绍StreamingContext如同SparkContext一样,StreamingContext也是SparkStreaming应用程序通往Spark集群的通道,它的定义…

    2022年6月26日
    34
  • Linux中强大的top命令[通俗易懂]

    Linux中强大的top命令

    2022年2月9日
    38
  • visifire  柱状图控件

    visifire  柱状图控件最近使用到一个柱状图控件visifire用起来还是比较高级的不过会有水印商业用途需要购买正版效果还是很好的还有动画效果能够识别最大高度创建之前需要引用http://note.youdao.com/noteshare?id=4a8d01bd0bfef2cdc86c5752aad3156…

    2022年7月21日
    14
  • MFC Java 使用socket 中文乱码解决方法(一)「建议收藏」

    MFC Java 使用socket 中文乱码解决方法(一)「建议收藏」MFCJava使用socket中文乱码解决方法(一)1、在使用MFC做服务端,Java做客户端时(1)客户端向服务端发送数据 Java发送代码:PrintWriterprintWriter= newPrintWriter( newBufferedWriter( newOutputStreamWriter( client.getOutputStream(),”gbk”)),true); //Windows一般默认为GB

    2022年7月14日
    12

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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