“Android 3.0(API级别11)引入了BitmapFactory.Options.inBitmap字段。如果设置了此选项,则解码带有Options对象的方法将在加载内容时尝试重用现有的位图。这意味着位图的内存重用,导致性能提高,并删除内存分配和解除分配。但是,如何使用inBitmap有一些限制。特别是在Android 4.4(API级别19)之前,只支持相同大小的位图。 “
我想知道为什么壁画在Android 4.4中不使用inBitmap,而是Android 5.0? 使用inPurgeable选项管理ashmem上的位图比在Davilk堆上使用选项inBitmap重用位图更有效吗?
感谢。
答案 0 :(得分:1)
是的,使用Fresco制作的特殊Android NDK调用inPurgeable
比inBitmap
效率更高。 Fresco的blog post有完整的故事(参见“可清除位图”部分和之后的部分)。
不幸的是,Google在Android 5.0中退役inPurgeable
,因此Fresco不得不退回到inBitmap
。