{"version":"0.1.0","code":"0000","result":true,"message":"处理成功","errdetail":"","timestamp":1671508873081,"data":{"id":71713576,"title":"6.5.8 图层性能相关","slug":"pvzld5","format":"lake","bookId":26046811,"body":null,"body_draft":null,"body_html":"
图层中有几个业务场景比较耗时,可能会有性能问题,需要额外注意:
如果一个图层的图元超过20个,这个图层又开启了碰撞,整体性能就会收到影响,因为每一帧渲染都要计算一遍所有图元之间的相互碰撞关系,计算量大、耗时。
建议:一个开启碰撞的图层,图元不超过10个或者自定义图层碰撞并通过设计业务逻辑减少碰撞次数或计算量。参考自定义图层碰撞
比如收藏夹,如果用户收藏了几千个POI,同时创建和显示几千个的POI,会比较耗时,直接造成延时卡顿的现象。
建议:如果必须显示大量图元,可以把该业务抛到其它线程中执行(比如Biz线程)参考图层对线程的要求
绘制长路线时(比如超过500公里)又有备选路线,会比较卡一些,因为长路线中包含的路线数据量非常大,从路线的解析到渲染都比较耗时。
建议:长路线图层的绘制比较耗时,这个是正常的现象。但是日志必须关闭,否则否会更耗时,因为为了调试需要,绘制过程中打印了大量的日志。参考路线绘制