As Error:Failed to find configured root that contains /storage/emulated/0/xxx/xxx/xxx.png
发生场景:
引用第三方包,启动它的拍照功能的时候直接闪退
java.lang.IllegalArgumentException: Failed to find configured root that contains
/storage/emulated/0/PictureSelector/CameraImage/PictureSelector_20190704_135543.pngat android.support.v4.content.FileProvider$SimplePathStrategy.getUriForFile(FileProvider.java:739)at android.support.v4.content.FileProvider.getUriForFile(FileProvider.java:418)at com.luck.picture.lib.PictureSelectorActivity.parUri(PictureSelectorActivity.java:444)at com.luck.picture.lib.PictureSelectorActivity.startOpenCamera(PictureSelectorActivity.java:378)at com.luck.picture.lib.PictureSelectorActivity.startCamera(PictureSelectorActivity.java:353)at com.luck.picture.lib.PictureSelectorActivity$10.onNext(PictureSelectorActivity.java:753)at com.luck.picture.lib.PictureSelectorActivity$10.onNext(PictureSelectorActivity.java:744)
查阅资料发现原来是手机android系统版本有关,自己的手机是Andriod 9.0的,对文件的管理权限有所要求
第一步,指定一个FileProvider。在AndroidManifest.xml中声明一个条目
<manifest xmlns:android="http://schemas.android.com/apk/res/android"package="com.example.myapp"><application...><providerandroid:name=".app.MyFileProvider"android:authorities="${applicationId}.provider"android:exported="false"android:grantUriPermissions="true"><meta-dataandroid:name="android.support.FILE_PROVIDER_PATHS"android:resource="@xml/provider_paths"tools:replace="android:resource" /></provider>...</application>
</manifest>
第二步,需要在项目的res->xml下添加:provider_paths.xml
external-path目录下指定想分享的目录,name可以随意但尽量避免跟上面的一样,path指定所需目录
然后在最下面添加如下:
<?xml version="1.0" encoding="utf-8"?>
<paths>
.........<external-pathname="picture_selector"path="PictureSelector/" />
</paths>
As Error:Failed to find configured root that contains /storage/emulated/0/xxx/xxx/xxx.png相关推荐
- FileProvider 的使用(Failed to find configured root that contains/storage/emulated/0/DCIM/ )
原文地址 以前调用系统相机拍照的时候,流程是这样的 private void takePhoto() {Intent takePictureIntent = new Intent(MediaStore ...
- Android FileProvider Failed to find configured root that contains /storage/emulated/0
在Android Project 中 res->xml-> path.xml 中增加 <root-pathname="name" path=".&quo ...
- AnsroidStudio中提示:Failed to find configured root that contain
场景 在配置应用更新时下载完安装包之后进行安装中的提示: Error = Failed to find configured root that contain 博客: https://blog.cs ...
- android开发出现错误:Failed to find configured root that contains
在android8.0以上的手机上,读取共享文件时,如apk更新的编程中,我们把apk下载后,要安装时,去读取这个apk文件就出现了如下错误: Failed to find configured ro ...
- 安卓 7.0 无法获取外置SD卡问题解决方案 | Failed to find configured root that contains
好久没更新了嘿嘿 最近懒 项目要收尾 一直懒懒的测试 看RXJava什么的 手机系统更新7.0 无意中发现调用相机报错Failed to find configured root that conta ...
- FileProvider无法获取外置SD卡问题解决方案 | Failed to find configured root that contains
FileProvider无法获取外置SD卡问题解决方案 | Failed to find configured root that contains 随着Android版本越来越高,Android官方 ...
- Failed to find configured root that contains 安装apk报错
1 遇到报错 app内部安装apk时,当apk路径为sdk时,遇到报错 Failed to find configured root that contains apk下载的路径为 /storage/ ...
- (转)Android Studio Error:Failed to resolve: com.android.support:appcompat-v7:25.1.0解决方案
(转)Android Studio Error:Failed to resolve: com.android.support:appcompat-v7:25.1.0解决方案 参考文章: (1)(转)A ...
- android --------- Android10系统上访问本地相机下的视频文件报错 /storage/emulated/0/DCIM/Camera/ open failed: EACCES
最近在Android10系统上访问本地相机下的视频文件报错: 华为Mate30上试的 FileNotFoundException(/storage/emulated/0/DCIM/Camera/xx. ...
最新文章
- opencv中ArUco模块实践(1)
- 苹果AirTag遭破解,网友放出“教程”,可重写程序,可能成为恶意跟踪“神器”...
- Java基础篇:强制类型转换
- 如何融合深度学习特征向量?
- Cocos2d-x的Android.mk自动生成
- android update sdk --no-ui,CircleCI Android constraintLayout不起作用
- php在线考试系统源代码_php实现在线考试系统
- 从“如何设计用户超过1亿的应用”说起----数据库调优实战
- 我的博客也是男的(还好)
- matlab 对称矩阵特征值为负数,【原创】古典Jaccobi方法计算实对称矩阵A的特征值和向...
- html表头固定原理,html Table 表头固定的实现
- c盘压缩卷压缩不了怎么办 c盘压缩卷只能压缩一半的解决方法
- HDU 3236 Gift Hunting (程序猿的哄女朋友方式)
- 为服务器选择固态硬盘的一个优点和缺点
- PPT文件无法打开处理
- 在openSUSE上编译aMule-DLP
- Angular 4 延缓加载组件
- 紧急提醒!黑客正利用假 ChatGPT 来推送恶意软件
- 电钻、电锤、电镐的区别
- JavaScript百炼成仙 1.14 秀