ImageDecoder 与 BitmapFactory

ImageDecoder vs BitmapFactory

有了 android Pie,新的 Class 可用于处理位图和可绘制对象操作。 以前我在大多数应用程序中使用 BitmapFactory 来处理位图操作。

我的问题是

我应该开始使用 ImageDecoder 吗?ImageDecoder 比 BitmapFactory 好在哪里?

鉴于

"ImageDecoder class, which provides a modernized approach for decoding images"

但是官方文档对此并没有多说

如果有人使用这个 class,可以解释一下使用这个 ImageDecoder class 的好处吗?

here 是我找到的官方文档

新的 ImageDecoder api 更强大并且支持多种不同的类型。它可以处理资产、gif、资源、可绘制对象等等。您可以传递许多不同类型的类型,它会为您将它们转换为 DrawablesBitmaps

这里有一些入门指南:

截至目前,ImageDecoder处于测试版阶段,它只有19个方法,其中7个是静态工厂方法,但功能强大。 ImageDecoder 可以将图像从 ByteBuffer、File 或 Uri 解码为 Bitmap 或 Drawable。这个东西很不错,他们还加入了解码动画 GIF 和 WebP 图像的支持。这些动画图像属于 AnimatedImageDrawable 类型,您可以随时使用 start() 方法播放它来播放可爱的猫咪 GIF。您还可以非常轻松地执行 post 处理、屏蔽、错误处理、裁剪和缩放,这真是太棒了。

我的建议

目前,它只出现在Framework中,所以我们只能在设备上使用它运行P 所以我个人的建议是等待正式发布,看看他们为以前的版本提供了什么因为他们在官方文档中没有提及太多。