我正在编写一个相当不错的 Android 应用程序,它需要缓存大量大小为 48x48 到 500x500 像素的不同图像。这些图像是通过网络从许多不同的来源获取的(想想:用户选择来源、浏览一堆图像、更改来源、浏览一堆图像等)。我想为这些图像实现缓存,因为如果有人浏览他们已经看过的一些图像,我不想点击 HTTP。显然,内存使用非常关键,所以这就是 EhCache 的用武之地,因为它提供了许多不同的选项来绑定(bind)缓存、将其扩展到磁盘等。
这是缓存这些图像的正确/最佳方式吗?我注意到很多应用程序缓存到 SD 卡上的磁盘,但为了速度/方便,我想尽可能避免这种情况。
最佳答案
你应该看看 Matthias Kaeppler 的项目 Droid-Fu:
https://github.com/mttkay/droid-fu
在Droid-Fu中有一个ImageCache
,一级缓存使用内存,二级缓存使用磁盘。它是专门为Android做的,并且在那里做了正确的事情,即为当前应用程序使用指定的缓存目录,而不是污染sdcard或其他目录。 Android 可以在需要时自动清理缓存目录。
这是Javadoc:
http://mttkay.github.com/droid-fu/com/github/droidfu/imageloader/ImageCache.html
关于android - Android 中的 EhCache 用于缓存位图图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4995245/