2017-11-11 56 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+上,您也需要使用文件提供程序。

相關問題