我有一个file:///
Uri
(图片),我发送到其他App的活动进行阅读。这个Uri
出现在我的缓存目录中,如下所示:
file:///data/user/0/com.example/cache/temp1510385678660-359616374.jpg
第三方应用(本例中为图库应用)显示Toast "无法加载媒体" 意味着它无法读取提供的Uri
我已将以下标志添加到Intent:
intent.setFlags(Intent.FLAG_GRANT_WRITE_URI_PERMISSION | Intent.FLAG_GRANT_READ_URI_PERMISSION);
为什么其他应用程序无法读取我的Uri以及如何使我的Uri可以访问?
注意:如果您认为,我应该使用FileProvider
,我实际上将其用于API> = 24,因为在API上使用它< 24将Uri发送到Google照片应用程序时会导致错误(他们的应用程序中存在错误)。
答案 0 :(得分:0)
这是您应用的私人内部存储空间。所以没有其他应用可以访问。
您必须使用文件提供程序。
即使您将文件放在外部存储设备上,然后在Android 7+上,您也需要使用文件提供程序。