屏幕加载时间
KMonitor 自动采集 Activity、Fragment 和 ViewController 绘制第一帧所需的时间,因此无需手动埋点即可找到缓慢的屏幕。
KMonitor 会自动采集 Android Activity、Fragment 以及 iOS ViewController 的加载耗时。加载缓慢意味着用户等待太久才看到内容,这些 Trace 可以帮助您定位需要优化的屏幕,无需手动埋点。
Android
Activity 加载时间测量 Activity 创建到屏幕绘制第一帧之间的时间,也称为第一帧时间或初始显示时间 (TTID)。
每次 Activity 加载都会记录为一个 Span,名称由 Activity TTID 加上 Activity 完全限定类名组成。例如 MainActivity 的 Span 名称为 Activity TTID com.example.MainActivity。
当 Activity 作为冷启动的一部分加载时,会添加 app_startup_first_activity 属性,值为 true。
Fragment 加载时间测量 Fragment view 创建到屏幕绘制第一帧之间的时间,也称为第一帧时间 (TTF) 或初始显示时间 (TTID)。
每次 Fragment 加载都会记录为一个 Span,名称由 Fragment TTID 加上 Fragment 完全限定类名组成。例如 HomeFragment 的 Span 名称为 Fragment TTID com.example.HomeFragment。
完全限定名称可能会被截断,以符合 Span 名称 64 个字符的限制。
捕获的数据
每次 Activity 加载都会创建 Activity TTID {fully qualified activity name} Span;每次 Fragment 加载都会创建 Fragment TTID {fully qualified fragment name} Span。
Activity TTID Span 可以携带以下属性:
| 属性 | 描述 |
|---|---|
| app_startup_first_activity | 此 Activity 是否是应用启动时的第一个 Activity。 |
这些 Span 具有以下 checkpoint:
| 检查站 | 描述 |
|---|---|
| fragment_lifecycle_attached | Fragment 附加的时间。 |
| fragment_lifecycle_started | Fragment 启动的时间。 |
| fragment_lifecycle_resumed | Fragment 恢复的时间。 |
| activity_lifecycle_created | Activity 创建的时间。 |
| activity_lifecycle_started | Activity 启动的时间。 |
| activity_lifecycle_resumed | Activity 恢复的时间。 |
iOS
ViewController 加载时间测量 ViewController 的 view 被加载到屏幕绘制第一帧之间的时间,也称为第一帧时间或初始显示时间 (TTID)。
每次 ViewController 加载都会记录为一个 Span,名称由 VC TTID 加上 ViewController 完全限定类名组成。例如 MainViewController 的 Span 名称为 VC TTID MainViewController。
当 ViewController 作为冷启动的一部分加载时,会添加 app_startup_first_view_controller 属性,值为 true。
完全限定名称可能会被截断,以符合 Span 名称 64 个字符的限制。
捕获的数据
每次 ViewController 加载都会创建 VC TTID {view controller name} Span。
ViewController TTID Span 可以携带以下属性:
| 属性 | 描述 |
|---|---|
| app_startup_first_view_controller | 此 ViewController 是否是应用启动时的第一个 ViewController。 |
这些 Span 具有以下 checkpoint:
| 检查站 | 描述 |
|---|---|
| vc_load_view | 加载视图的时间。 |
| vc_view_did_load | 视图加载到内存中的时间。 |
| vc_view_will_appear | 视图即将出现的时间。 |
| vc_view_did_appear | 视图完全可见的时间。 |