性能数据

为了帮助开发者更好地了解和分析微信小程序性能状况,我们在「微信小程序助手」微信小程序上提供了性能相关的数据统计。同时,开发者也可以根据业务需要自行上报和分析。

1. 获取性能数据

1.1 通过 We 分析

We 分析-「性能质量」-「性能数据」也提供部分性能数据的看板,目前还在不断完善中。

1.2 通过 wx.getPerformance 在微信小程序内获取

开发者可以使用 wx.getPerformance 获取当前微信小程序性能相关的信息,包括无法在 JS 代码中直接打点获取的一些时间信息。此外,开发者也可以在微信小程序中根据自身业务需要进行打点。

具体的指标说明如下:

  • appLaunch:微信小程序启动耗时。
    • 起点为用户点击微信小程序图标,或微信小程序被拉起的时间;
    • 终点为首个页面 LargestContentfulPaint 结束时间。
  • route:页面切换耗时。
    • 起点为触发页面切换;
    • 终点为页面 LargestContentfulPaint 结束时间;
    • 详情请参见页面切换性能文档。
  • firstRender:页面首次渲染耗时。
    • 起点为逻辑层收到路由事件,包括逻辑层页面与组件初始化、VD 同步、渲染层执行渲染的时间;
    • 终点为页面 onReady;
    • 详情请参见页面切换性能文档。
  • firstPaint(FP):页面首次绘制
    • 页面首次绘制(第一个像素渲染到屏幕上)的时间;
  • firstContentfulPaint(FCP):
    • 页面首次内容绘制(第一块内容渲染到屏幕上)的时间;
    • 具体含义可以参考 《First Contentful Paint》
  • largestContentfulPaint(LCP):
    • 页面最大内容绘制的时间;
    • 具体含义可以参考 《Largest Contentful Paint》
  • evaluateScript:逻辑层 JS 代码注入(含编译和执行)耗时。