【发布时间】:2016-08-30 13:44:52
【问题描述】:
官方文档Vector Asset Studio 指出,SVG 可用于减小 APK 大小。它还指出 SVG 需要很多 CPU 周期来绘制。
矢量图形的初始加载可能会花费更多的 CPU 周期,而不是 对应的光栅图像。之后,内存使用和性能 两者之间是相似的。我们建议您限制向量 图像最大为 200 x 200 dp;否则,可能需要很长时间才能 画。
此外,从 Lollipop 开始支持它。关于向后兼容性,它指出-
Android 4.4(API 级别 20)及更低版本不支持矢量绘图。 如果您的最低 API 级别设置为这些 API 级别之一,您有 使用 Vector Asset Studio 时的两个选项:生成便携式网络 图形 (PNG) 文件(默认)或使用支持库。
为了向后兼容,Vector Asset Studio 会生成栅格 矢量可绘制的图像。矢量和光栅可绘制对象是 打包在 APK 中。
光栅图像看起来比 SVG 更有效。此外,虽然 APK 的大小会减小,但 SVG 对内存和应用程序性能的影响是什么,因为文档指出绘制大型 SVG 文件需要时间。
作为一名 android 开发者,我的方法应该是什么?以上哪种方式或任何其他方式将确保我的应用程序得到优化并提供良好的性能。
编辑:然后是一个查询,两者中最好的方法应该是什么 -
- 使用 SVG 减小 apk 大小,但会增加绘图的 CPU 周期
- 使用光栅图像
【问题讨论】:
标签: android performance user-interface svg