优化重点页面

    • 在小程序中 a 页面跳转 b 页面这种情况,不会被计算到 fmp 中。fmp 只适用于从小程序外部调起小程序并打开页面的场景(冷启动)。
    • 渲染完首屏内容后,系统内核就会打 fmp 的点,不会等到把整个页面都渲染完成再打点,所以提升 fmp 的关键就是想办法尽早先渲染出首屏需要的内容,并延后其他内容的渲染。

    整体 fmp 是通过将小程序每个页面的 fmp 值做排序,选取80分位的 fmp 值。我们从开发者平台看到的上屏时长,是通过这种计算方式得出的整体 fmp 值,后续对单页 fmp 的数据,也会开放出来。

    • 白屏:是指因为某种原因,页面6s内没有展示内容,则被判为白屏,此时不会被记录到 fmp 中
    • 空白页面调起 NA 页:比如进入页面后没有内容渲染,直接调起某些 NA 功能页(如刷脸功能),此时不会被记录到 fmp 中

    • 内容超出首屏的页面,按常规手段分析即可,一般优化空间较大
    • 内容不足首屏的页面,且页面是直接渲染页面,不需要 setData ,即 fcp 与 fmp 很接近,一般优化空间不大
    • webview 嵌套 h5 的页面,fmp 主要以 h5 渲染完成为准,基本没有优化空间

    除了前文中提到的各种优化手段外,代码优化中还需要注意:

    • 去掉页面渲染过程中没必要的 setTimeout
    • 对每次调用结果都不变的同步端能力,缓存其结果,可考虑存在 storage 中