2017-11-11 75 views
-1

我有一个file:///Uri(图片),我发送到其他应用程序的活动阅读。这Uri出现在我的缓存目录这样的:应用程序如何从我的缓存目录中读取文件?

file:///data/user/0/com.example/cache/temp1510385678660-359616374.jpg 

第三方应用程序(图库应用程序在这种情况下)显示吐司“无法加载媒体”这意味着它无法读取提供Uri

我加入以下标志的意图:

intent.setFlags(Intent.FLAG_GRANT_WRITE_URI_PERMISSION | Intent.FLAG_GRANT_READ_URI_PERMISSION); 

为什么其他应用无法读取我的URI,并可以让我怎么我的乌里访问?


注意:如果你想,我应该使用一个FileProvider,我真正使用它的API> = 24,因为使用它的API < 24通向一个错误,而发送的URI谷歌照片应用(在他们的应用程序中的错误)。

回答

0

这是您的应用程序的私人内部存储空间。所以没有其他应用程序可以访问

您必须使用文件提供程序。

即使您将文件放置在外部存储上,那么在Android 7+上,您也需要使用文件提供程序。

相关问题