问题标签 [android-lru-cache]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 带有 AsyncTask 图像问题的 Android ListView
我有一个 ListView,它显示了电话簿中的某些联系人。我用这个https://stackoverflow.com/a/10235381/1809507用作缓存类并使用 AsyncTask。
当联系人没有照片时,我使用默认照片。我在 XML 中设置了默认值。当我使用以下方法设置联系人照片时,仅当它存在并且我滚动列表视图时,那些没有照片的联系人开始获取其他联系人照片。如果我从retrieveContactPhoto 方法中获取默认照片为Bitmap 而不是null 并分配给imageview,它会很好用,但我认为当有很多联系人没有照片时这不是一个好的解决方案,因为我会多次缓存同一张默认照片。还是我错了?
android - android Lrucache:无法检索缓存的位图
我能够将位图插入LruCache
但无法检索先前解码的图像。我的数据库中有 100 多张图片。当我对它进行解码时,我的 gc mmemory 正在增加。所以我正在实现它以重用解码后的图像。
获取最大可用 VM 内存,超过此数量将引发 OutOfMemory 异常。以千字节为单位存储,因为 LruCacheint
在其构造函数中采用了一个。
android - 使用 LruCache 的首选方式:大单件还是许多小件?
在缓存所有图像的应用程序中,是否更喜欢在全局范围内使用大LruCache
作为单例,还是更喜欢LruCache
在应用程序的不同位置使用几个较小的?
android - Android LRUCache 检索
我在 Android 中实现了一个标准的 LRUCache 来存储对象。每个键都是与存储的对象关联的唯一 ObjectId。我的问题是从缓存中检索对象的唯一方法是通过 ObjectId(无迭代器)。实现 getAll() 方法的最佳方法是什么?另一种选择是将所有 ObjectIds 存储在某个列表中,这样我就可以遍历列表并获取所有 Objects - 但是保存所有 ObjectIds 的最佳方式是什么?
谢谢!
android - 位图回收不适用于 android 4.2 或以上 4.2?
我正在使用下面的 LRU 类来管理位图,使用我正在创建和删除位图的这两个类将它们放在 viewpager 视图上。相同的代码在 4.2 版本以下运行,但是当我在 4.2 或更高版本上加载我的应用程序时,堆大小随着我切换页面而不断增加。问题是我能够在 4.2 或更高版本中回收位图,但堆大小却不是在增加。是他们在 4.2 或更高版本中释放堆大小的任何其他方式。请帮我解决这个问题
android - 使用缓存存储位图
我正在使用 LruCache 来存储位图。
这是我运行以存储位图的异步任务。
这是我的缓存实现:
在我的清单中,我还有:
问题是在我的 ListView 中......当我向下滚动时......图像从 url 重新加载并且代码到达这一行:
什么可能导致这个问题?
data-structures - LRU 缓存包含不应删除的对象
我在我的 Android 应用程序中使用 LRU 缓存(LruCache
来自的类)。android.util
这通常工作正常。
现在我对这个 LRU 缓存有一个特殊要求:我希望某些对象永远不会被删除。解释情况:我有一个永远不应删除的对象数组(名为mymetadata对象),我还有许多其他对象(名为dynamicdata对象)应使用 LRU 规则删除。我想将mymetadata对象存储在 LRU 缓存中,因为对象数组也可以增长,并且使用 LRU 缓存有助于避免内存不足。
是否有任何技巧可以保证mymetadata对象永远不会从 LRU 缓存中删除?还是我应该简单地从数组中访问一个对象,以便将其标记为上次使用?
android - 安卓:LruCache 返回 null
我是 android 中 LruCache 的新手,我想在这个缓存上放置和获取位图图像 (JPEG) 以防止内存错误和内存异常,所以我不明白为什么我的代码不起作用。这是我的代码:
这是我的 LruCache 代码:
我不知道为什么不工作:(谢谢
android - 如何清除 Androids LRUCache
在 Google Developer 的 API 中有一个 trimToSize() 方法,我找不到/使用。如何清除或减小 LRU 缓存的大小?
android - Android LRU 缓存未缓存在姜饼上
我使用 LRU 缓存来缓存位图图像。我使用典型的代码来实现这些,它在冰淇淋三明治上运行良好。
但是,缓存过程不适用于 Gingerbread。
这是我的代码:
此代码在冰淇淋三明治上运行良好。例如,当第一次缓存发生时,输出为:
但是,在 Gingerbread 上的结果不同:(缓存大小没有改变)
此项目未缓存。
我试图扩展缓存内存大小,但结果没有改变。
如何解决这个问题呢?