外观
启动慢时 如何找出真正的关键路径?
标准回答
我会先定义测量起止点,区分点击响应、应用初始显示和主要内容可用,再在统一设备状态下多次采样。Perfetto 中沿输入、ATMS、进程创建、bindApplication、Provider、Application、Activity、View traversal、RenderThread 和呈现阶段串联关键路径,判断时间是在执行、等锁、等 Binder、等 I/O 还是等调度。优化围绕首帧必要依赖,把可延后工作移出关键路径,而不是把所有任务同时丢到线程池。之后用相同口径复测分布并检查功能与资源代价。
延伸追问
TTID 和 TTFD 有明确统计语义,产品自己的点击响应与完成指标不能未经核对就直接改名。
内容来源
- Android Framework 知识手册 · 原条目
7-1