Android无法从文件路径获取缓存图像

时间:2015-06-02 22:30:02

标签: java android file cordova caching

我们有一个Cordova应用程序。我收到一张传递给我的图片,保存在缓存中。

我需要从字符串url:

创建一个文件
File pictureFile = new File(fileURL)

但是,当我尝试加载该图像文件时,它会一直失败(找不到文件)。

我传递的样本是:

file:///data/data/co.appname.app/cache/tfss-4cb94488-1843-4ad3-8d02-8802008c7186-1685720347.jpg

我尝试制作以下网址,但在创建文件

时无效
/data/data/co.appname.app/files/tfss-4cb94488-1843-4ad3-8d02-8802008c7186-1685720347.jpg

file:/data/data/co.appname.app/files/tfss-4cb94488-1843-4ad3-8d02-8802008c7186-1685720347.jpg

我还尝试仅使用文件名tfss-4cb94488-1843-4ad3-8d02-8802008c7186-1685720347.jpg并直接获取缓存目录,但这两者都不起作用

String path = getFilesDir().getAbsolutePath() + tfss-4cb94488-1843-4ad3-8d02-8802008c7186-1685720347.jpg

最终会以/data/data/co.appname.app/files/tfss-4cb94488-1843-4ad3-8d02-8802008c7186-1685720347.jpg结束,但仍会显示为空。

因为我们将图像上传到Twitter并且Cordova将图像保存在缓存中,所以图像存在于那里。

你能告诉问题是什么吗?

1 个答案:

答案 0 :(得分:2)

我需要致电getCacheDir()而不是getFilesDir()