我找到了许多与fileprovider相关的链接,但我没有找到 cache Directory的解决方案
java.lang.illegalargumentException:未能找到配置的root 其中包含
/data/data/pkg name/cache/1487876607264.png
我想将其用于缓存目录,我如何在提供商中给出路径。
<paths>
<external-path name="external_files" path="." />
</paths>
我将其用作:
File file = new File(context.getCacheDir(), System.currentTimeMillis() + ".png");
Uri uri = FileProvider.getUriForFile(context, context.getApplicationContext().getPackageName() + ".provider", file);
如果我提供应用程序文件夹路径,则可以正常工作,但不使用 CACHEDORY。
有帮助吗?
使用<cache-path>
,而不是<external-path>
。请参阅文档。
在我的情况下,我对两个不同的路径使用相同的名称。唯一的工作路径是最后一个。因此,请确保为每个路径指定唯一名称。