合规国际互联网加速 OSASE为企业客户提供高速稳定SD-WAN国际加速解决方案。 广告
> 图片的三级缓存中,图片加载到内存中,如果内存快爆了,会发生什么?怎么处理? [Android官网介绍#管理位图内存](https://developer.android.com/topic/performance/graphics/manage-memory) 这篇文章中讲到: - 从 Android 3.0(API 级别 11)到 Android 7.1(API 级别 25),像素数据会与关联的位图一起存储在 Dalvik 堆上。 - 在 Android 8.0(API 级别 26)及更高版本中,位图像素数据存储在原生堆中。 所以内存块爆的时候会在对应的堆上发生 `OutOfMemoryError` 异常导致应用程序崩溃 ,需要对内存中的 `Bitmap` 进行回收。 > `Bitmap` 如何处理大图,如一张 `100M` 的大图,如何预防 `OOM` ? 1. 对图片进行压缩处理之后进行展示,[参见下一章 Bitmap压缩](https://www.kancloud.cn/book/stven_king/stven_king_android_interview_topic/preview/Bitmap/Bitmap%E5%8E%8B%E7%BC%A9.md) 。 2. 分片(分区域进行加载),[参见下下一章 Bitmap局部解码](https://www.kancloud.cn/book/stven_king/stven_king_android_interview_topic/preview/Bitmap/Bitmap%E5%B1%80%E9%83%A8%E8%A7%A3%E7%A0%81.md)。 ***** 文章到这里就全部讲述完啦,若有其他需要交流的可以留言哦~!~! 想阅读作者的更多文章,可以查看我 [个人博客](http://dandanlove.com/) 和公共号:![振兴书城](https://imgconvert.csdnimg.cn/aHR0cDovL3VwbG9hZC1pbWFnZXMuamlhbnNodS5pby91cGxvYWRfaW1hZ2VzLzEzMTk4NzktNjEyYzRjNjZkNDBjZTg1NS5qcGc?x-oss-process=image/format,png)