0

我想从外部应用程序访问 FileProvider 内部存储上的文件:

InputStream inputStream=contentResolver.openInputStream(Uri.parse("content://com.example.android.fileprovider/path/to/file.txt"));

android:authorities="com.example.android.fileprovider"是我在其他(FileProvider)应用程序的清单 xml 中指定的权限字符串。

和:

<paths xmlns:android="http://schemas.android.com/apk/res/android">
    <files-path name="path" path="path/"/>
</paths>

该文件存在于 (files)/path/to/file.txt 下的内部 FP 存储中

但我总是得到 IllegalArgumentException no root 等。这不是默认的 Android FileProvider 打算使用的方式吗?我误解了它的用途吗?为什么例如默认情况下在exported=false 中?

4

1 回答 1

0
  • 首先你必须用 android:authorities="com.example.android.fileprovider" 替换你的包名
  • 其次,不存在名称为“路径”的目录它必须是文件段中的图像/,视频/等
于 2017-08-21T09:13:58.163 回答