2015-05-18 87 views
0

「Android 3.0(API level 11)引入了BitmapFactory.Options.inBitmap字段。如果設置了此選項,那麼接受Options對象的解碼方法將嘗試在加載內容時重用現有的位圖。這意味着位圖的內存被重用,從而提高了性能,並且消除了內存分配和取消分配。但是,如何使用inBitmap有一定的限制,特別是在Android 4.4(API級別19)之前,只支持相同大小的位圖。「Android 4.4支持inBitmap的壁畫lib

我想知道爲什麼壁畫在Android 4.4中使用inBitmap,但Android 5.0? 是否正在管理ashmem上的位圖,並且在Davilk堆中通過選項inBitmap重複使用位圖效率更高效?

謝謝。

回答

1

是的,inPurgeable,與特殊的Android NDK調用Fresco使得,比inBitmap更有效率。壁畫的blog post有完整的故事(請參閱「可清除位圖」一節和後面的一節)。

不幸的是Google在Android 5.0中退役inPurgeable,所以Fresco不得不退回到inBitmap