为了帮助开发者更好地了解和分析微信小程序性能状况,我们在「微信小程序助手」微信小程序上提供了性能相关的数据统计。同时,开发者也可以根据业务需要自行上报和分析。
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 代码注入(含编译和执行)耗时。