FileProvider共享文件
1.配置fileProvider
<provider
android:name="android.support.v4.content.FileProvider"
android:authorities="com.php.demo.FileProvider"
android:exported="false"
android:grantUriPermissions="true">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/file_paths" />
</provider>
2.配置路径
root-path 对应DEVICE_ROOT,也就是File DEVICE_ROOT = new File("/"),即根目录,一般不需要配置。
files-path对应 content.getFileDir() 获取到的目录。
cache-path对应 content.getCacheDir() 获取到的目录
external-path对应 Environment.getExternalStorageDirectory() 指向的目录。
external-files-path对应 ContextCompat.getExternalFilesDirs() 获取到的目录。
external-cache-path对应 ContextCompat.getExternalCacheDirs() 获取到的目录。
<?xml version="1.0" encoding="utf-8"?>
<paths>
<external-path
name="external_storage_root"
path="." />
<files-path
name="files-path"
path="." />
<cache-path
name="cache-path"
path="." />
<!--/storage/emulated/0/Android/data/...-->
<external-files-path
name="external_file_path"
path="." />
<!--代表app 外部存储区域根目录下的文件 Context.getExternalCacheDir目录下的目录-->
<external-cache-path
name="external_cache_path"
path="." />
<!--配置root-path。这样子可以读取到sd卡和一些应用分身的目录,否则微信分身保存的图片,就会导致 java.lang.IllegalArgumentException: Failed to find configured root that contains /storage/emulated/999/tencent/MicroMsg/WeiXin/export1544062754693.jpg,在小米6的手机上微信分身有这个crash,华为没有
-->
<root-path
name="root-path"
path="" />
/paths>
3.配置调用先请求权限读取
File file = new File(Path); Intent intent = new Intent(Intent.ACTION_VIEW); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); Uri uri = FileProvider.getUriForFile(context,"com.cgkc.taxqa.fileprovider",file); intent.setDataAndType(uri, "application/pdf"); return intent;
FileProvider共享文件相关推荐
- Android 7.0配置fileprovider共享文件 解决FileUriExposedException
一.前言 从 Android N(7.0) 开始,将严格执行 StrictMode 模式,也就是说,将对安全做更严格的校验.而从 Android N 开始,将不允许在 App 间,使用 file:// ...
- android 7.0拷贝文件,Android 7.0应用间共享文件----FileProvider
应用间经常需要将自己的私有文件共享给其他的app,如某应用想要共享图库的图片用来编辑用户的头像,或者文件管理app允许用户在不同目录下复制粘贴文件等等,但为了保护私有文件的安全性,在targetSdk ...
- [转]快速使用FileProvider解决Android7.0文件权限问题
升级到Android7.0之后,启动系统相机或者截图,传入URI的时候可能会导致程序闪退崩溃.这是因为7.0的新的文件权限导致的.下面是解决这个问题的快速解决方案. 问题代码 在7.0可能会出问题的代 ...
- FileProvider
参考文档: 官方文档 FileProvider共享文件.缓存 FileProvider 是一个特殊的 ContentProvider 的子类,它使用 content://Uri 代替了 file:// ...
- Android 7.0拍照/相册/截取图片FileProvider使用
Android 7.0拍照/相册/截取图片FileProvider使用 Android 70拍照相册截取图片FileProvider使用 GitHub地址 HIT THE PIT 需求 实现解析 一 ...
- Android-7.0系统安装异常之解析包错误
关于这个毛茸茸的小错误 最新在开发一个新的 APP ,自己手动写了版本更新,测试发现,覆盖安装的时候,在 Android 7.0 系统上出现解析包错误. 报错信息: 核心报错信息: java.lang ...
- Android 7.0/8.0 安装APK时解析包错误问题
在 Android 7.0 引入了"私有目录被限制访问",通过使用FileProvider来解决问题,但是在安装应用时却出现了解析包出错的问题 来检查一下代码 private vo ...
- android开发 文件分享到应用,Android开发之——7.0适配之应用之间共享文件(FileProvider)...
前言 Android 7.0强制启用了被称作StrictMode的策略,带来的影响就是你的App对外无法暴露file://类型的URI了. 如果你使用Intent携带这样的URI去打开外部App(比如 ...
- Android 7.0 行为变更 通过FileProvider在应用间共享文件吧
本文转自张鸿洋的博客 http://blog.csdn.net/lmj623565791/article/details/72859156 一.概述 之前项目的新特性适配工作都是同事在做,一直没有怎么 ...
最新文章
- 求合体电脑版_SCP CB 电脑移植版测评
- 利用Nagios + CloudWatch API 监控 Amazon 实例
- 图灵三周年盛大庆典!
- 广东海洋大学微型计算机考试,广东海洋大学2007-2008微型计算机原理及应用
- mysql combat_LICENSE · 爱是与世界平行/mysqlActualCombat - Gitee.com
- 给写新疆开放互联网一周纪念
- 编程php分析器,如何编程访问分析器数据
- SpringBoot基础篇配置信息之配置刷新
- IT、OT融合趋势下,西门子举办“第一届西门子工业边缘生态大会”
- 「经营分析报告」怎么做?这套模板让领导一看就懂
- 【今日CS 视觉论文速览】3 Jan 2019
- 2017.9.29 road 失败总结
- 企业管理软件解决方案 出售 :针对华东区中小企业订单仓储管理流程
- 在Windows Server2008上安装SQL2008群集
- 会c 学plc编程语言,想学PLC编程?先弄清5种PLC专用语言!
- Hookswork补单逻辑说明——多帐户跨平台MT4跟单软件
- 工程师原创:人人都看得懂的电磁场理论
- Shiro 实战教程(上)
- 初探微信小程序渗透测试
- android 按钮自动按下,按键点击精灵app官方版-按键点击精灵(全能自动点击连点器)下载v2.200.2安卓版-西西软件下载...
热门文章
- Android全面屏导航栏高度,Android10全面屏开启底部手势横条,弹窗留白问题
- Python+OpenCV实用案例应用教程:建立自定义物体检测器
- 把Word或Excel表格插入CAD中直接编辑的方法
- matlab光学原理仿真应用衍射,基于Matlab的光学衍射仿真【参考】.doc
- 电大计算机应用基础期末考试题,电大计算机应用基础模拟题答案.docx
- 健身管理系统源码设计和实现
- C语言 指针,重点详解,(大佬必看, 进阶架构师)
- 2020年AJ超级配乐库音频配乐资源2020.VOL-09更新100首Audio Jungle音乐素材包
- excel表格行宽列高怎么设置_解决方案:Excel自动调整列宽和行宽什么是快捷键? [Excel设置行高度自适应]...
- 全球与中国矿物加工工程市场深度研究分析报告