本文属于安卓页面绘制流程的第3篇,主要介绍应用是如何把APP侧的Window向system进行注册的。 主要分为2大块: 第一块,APP侧在resume周期时向系统侧申请绑定。 第二块,系统侧收到请求后处理绑定的流程。 在上一篇文章中,我们已经讲过,在Activity的create周期内,其所对应的window及其中的布局创建完成。接下来,就是需要把这个window和系统侧做一个绑定。 1.1 Activity和ActivityClientRecord中成员变量赋值 首先,我们仍然看一下resume周期所对应的代码,如下: //ActivityThread.java public void handleResumeActivity(ActivityClientRecord r, ...) { final Activity a = r.activity; ... if (r.window == null && !a.mFinished && willBeVisible) { r.window = r.activity.getWindow(); ...