Failed to find configured root that contains问题解决

     看到这个文章的,说明已经了解了fileprovider,差不多代码加上去,但是为什么会有这个错误了?这里我记录一下我遇到一种情况:support版本不一致导致的

     整个代码是一个SDK,我的开发测试环境,是support.v4 25.0.0版本,我在xml文件里面定义两个路径 “cache-path”、"external-cache-path"。测试的时候,一切运行正常。

把SDK给到其他人使用的时候,发现异常了,提示“Failed to find configured root that contains”错误。明明一个设备,一样的代码为什么就运行不正常。然后开始debug,发现运行在

我的开发App里面,是解析到两个路径了,但是在其他人的时候,只能解析到一个路径!,"external-cache-path"没有识别。重新在fileprovider初始化的地方打上断点,然后debug运行,还是一样现象。

看了几遍,终于发现,在support v4 23.2.0的版本,fileprovider里面没有 "external-cache-path"这个路径,我定义在xml的这个路径,当然就识别不了,我自己开发工程使用的25.0.0,是有这个定义,就运行正常了。

     知道这个问题原因了,改动起来很简单,最粗暴改法,把25.0.0版本里面的fileprovider代码复制一份,重新改个名称,就可以搞定了。 

posted @ 2021-04-12 22:18  忙里偷闲  阅读(3135)  评论(0编辑  收藏  举报
广东财富东方律师事务所