首页 / 资讯中心 / 文章详情

第249篇 Bitmap 内存优化:采样、复用与硬件位图

第249篇 Bitmap 内存优化:采样、复用与硬件位图 ★ FEATURED ARTICLE
先把结论放在前面:Bitmap 是 Android 应用内存占用里最容易失控的一块,而它的失控通常来自一个误解——以为内存等于图片文件大小。实际占用是宽 × 高 × 每像素字节数,一张 4000×3000 的 ARGB_8888 图片,解码后约 46 MB,而它的压缩文件可能只有 2 MB。 Bitmap 优化的核心动作只有一个:按显示尺寸解码,不要按原始尺寸解码。面试里这题属于"内存专题里最实用的一块"。答得浅的是"用inSampleSize采样、调用recycle()";答得深的是能讲清inPreferredConfig对每像素字节数的影响、RGB_565丢失 alpha 与色彩精度、recycle()的误用风险与框架已回收的场景、以及硬件位图(HardwareConfig)把像素移到图形内存后的能力边界。先算清内存账Bitmap 像素数据在 Native 堆,不在 Java 堆。这一点决定了排查方法:看dumpsys meminfo的 Native Heap,而不是堆快照。配置每像素字节4000×3000 解码后适用
阅读完成 · 觉得有帮助?
咨询建站