Kuikly业务性能优化指引
大约 1 分钟
Kuikly业务性能优化指引
安装包优化
不需要被外部引用的类和对象,增加internal修饰,这样可以避免编译器为这些类生成桥接对象。也可以帮助编译器优化掉一些实际上没有使用到的类。
内存大小优化
避免在代码中hardcode base64的数据,尤其是base64的image。
性能和效率优化
1. 最小化数据和资源加载
- 仅加载首屏数据必须数据
- 同步加载首屏必须的图片资源
2. 最小化observable的使用
- 避免单一observable影响过多逻辑
- 避免使用过多的observable
3. 重量级自定义view增加预加载和复用
如果自定义view的创建是比较耗时的,例如视频播放器等,可考虑在宿主端侧对view实例子进行预创建和复用。这样可以进一步提高渲染效率和启播效率。
4. 降低桥接调用耗时
在调用宿主侧能力时,往往是通过module方式来实现对,异步module的调用会有轻微跨线程和序列化开销,这对绝大多数业务基本没影响,但如果某些特殊场景对桥接性能有特别大的关注,可考虑以下优化
- 使用同步module调用,并直接返回数据
- 如果同步module也仍然不能满足需要,可以使用kmp模块方式彻底避免序列化开销