共享图像 - 无法找到包含的配置根

Gun*_*lan 2 android android-fileprovider

我可以共享从除相机之外的其他文件夹添加的文件。我在 Lenova K3 Note 中遇到以下异常。

java.lang.IllegalArgumentException: Failed to find configured root that contains /storage/9016-4EF8/DCIM/Camera/IMG_20180317_111252.jpg
Run Code Online (Sandbox Code Playgroud)

文件路径.xml

<?xml version="1.0" encoding="utf-8"?>
<paths>
   <files-path
       name="Camera"
       path="/Camera/" />
   <files-path
       name="Files"
       path="." />
   <external-path
       name="Downloads"
       path="/Download/" />
   <external-path
       name="WhatsApp"
       path="/WhatsApp/" />
   <external-path
       name="Camera"
       path="/Camera/" />
   <external-path
       name="Others"
       path="." />
   <external-files-path
       name="Camera"
       path="/Camera/" />
   <external-files-path
       name="Files"
       path="." />
</paths>
Run Code Online (Sandbox Code Playgroud)

Gun*_*lan 5

是的,您不能将 FileProvider 用于可移动 SD 卡。root-path但你可以在警告的情况下使用

此处不允许使用元素根路径

喜欢关注

<root-path
    name="Name"
    path="." />
Run Code Online (Sandbox Code Playgroud)

  • 我不明白这个警告。如果不允许的话,为什么它会按预期工作(我使用它并且它确实如此)?关于这种愚蠢警告的真正问题是:它会工作多久,直到有一天应用程序在新的 Android 版本上崩溃?我真的很讨厌谷歌这样的垃圾...... (4认同)