斗鱼Android面试题及参考答案
常用的图片框架有哪些?
- Glide:是一个快速高效的 Android 图片加载库,专注于平滑滚动。它支持多种图片格式,包括 GIF,具有高效的缓存策略,能自动管理图片的生命周期,避免内存泄漏和 OOM 错误。其 API 简洁易用,可轻松实现图片的加载、显示和缓存等功能,如一行代码即可实现图片从网络或本地的加载并显示在 ImageView 中。
- Picasso:由 Square 公司开发,使用简单,能自动处理图片的缓存和加载,支持从网络、本地文件系统、资源文件等多种来源加载图片。在加载图片时,会自动根据 ImageView 的大小调整图片的尺寸,减少内存占用,同时提供了丰富的图片变换和裁剪功能。
- Fresco:Facebook 开源的图片库,主要特点是在加载图片时,将图片以流的形式进行处理,支持渐进式加载,先显示低质量的图片,然后随着加载的进行逐渐显示高质量的图片,从而提高用户体验。它对大图片和长图的处理有很好的优化,能有效避免 OOM。
- Coil:是一个轻量级的图片加载库,基于 Kotlin 和协程实现,具有简洁的 API 和高效的性能,支持多种图片源和缓