Kuikly业务性能优化指引

大约 1 分钟

Kuikly业务性能优化指引

安装包优化

不需要被外部引用的类和对象,增加internal修饰,这样可以避免编译器为这些类生成桥接对象。也可以帮助编译器优化掉一些实际上没有使用到的类。

内存大小优化

避免在代码中hardcode base64的数据,尤其是base64的image。

性能和效率优化

1. 最小化数据和资源加载

  • 仅加载首屏数据必须数据
  • 同步加载首屏必须的图片资源

2. 最小化observable的使用

  • 避免单一observable影响过多逻辑
  • 避免使用过多的observable

3. 重量级自定义view增加预加载和复用

如果自定义view的创建是比较耗时的,例如视频播放器等,可考虑在宿主端侧对view实例子进行预创建和复用。这样可以进一步提高渲染效率和启播效率。

4. 降低桥接调用耗时

在调用宿主侧能力时,往往是通过module方式来实现对,异步module的调用会有轻微跨线程和序列化开销,这对绝大多数业务基本没影响,但如果某些特殊场景对桥接性能有特别大的关注,可考虑以下优化

  • 使用同步module调用,并直接返回数据
  • 如果同步module也仍然不能满足需要,可以使用kmp模块方式彻底避免序列化开销
上次编辑于: