标签:provider lin .com androi eve getc blank files ext.get
这个主要问题是在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" />
<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
标签:provider lin .com androi eve getc blank files ext.get
原文地址:https://www.cnblogs.com/fengfenghuifei/p/10725603.html