Failed to find configured root that contains

Posted fengfenghuifei

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Failed to find configured root that contains相关的知识,希望对你有一定的参考价值。

这个主要问题是在android系统下7.0

拍照时,Android提供FileProvider类来供应用之间共享数据。

出现这个问题多为xml文件 path 类型和代码中调用的类型不同导致的

以下为多种各种xml文件和对应path类的关系

<files-path path="" name="camera_photos" />

该方式提供在应用的内部存储区的文件/子目录的文件。它对应Context.getFilesDir返回的路径:eg:"/data/data/com.jph.simple/files"。

<cache-path name="name" path="path" />

该方式提供在应用的内部存储区的缓存子目录的文件。它对应getCacheDir返回的路径:eg:“/data/data/com.jph.simple/cache”;

<external-path name="name" path="path" />

该方式提供在外部存储区域根目录下的文件。它对应Environment.getExternalStorageDirectory返回的路径:eg:"/storage/emulated/0";

<external-files-path name="name" path="path" />
该方式提供在应用的外部存储区根目录的下的文件。它对应Context#getExternalFilesDir(String) Context.getExternalFilesDir(null)返回的路径。eg:"/storage/emulated/0/Android/data/com.jph.simple/files"。
<external-cache-path name="name" path="path" />

该方式提供在应用的外部缓存区根目录的文件。它对应Context.getExternalCacheDir()返回的路径。eg:"/storage/emulated/0/Android/data/com.jph.simple/cache"

这些就是FileProvider提供的所有支持的path类型

如果使用外部SD卡

则需要设置

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <paths>
        <root-path path="" name="camera_photos" />
    </paths>
</resources>

添加root-path节点

这样FileProvider就可以使用外部储存卡了


 

以上是关于Failed to find configured root that contains的主要内容,如果未能解决你的问题,请参考以下文章

As Error:Failed to find configured root that contains /storage/emulated/0/xxx/xxx/xxx.png

As Error:Failed to find configured root that contains /storage/emulated/0/xxx/xxx/xxx.png

yii框架:CDbConnection failed to open the DB connection: could not find driver的解决的方法

安装Intel HAXM:"failed to configure driver unknown error. failed to open driver"

Failed to configure a DataSource

Unable to load configuration.