Activity启动三

1、application初始化后就要真正的启动activity了

2、realStartActivityLocked

3、AMS所在进程调用 ActivityThread中的Stub实体对象中的scheduleLaunchActivity方法

4、处理消息

5、加载类

6、看到ClassLoader是一阵狂喜的,因为项目中用到了Replugin插件化,这里hook了mClassLoader,加载插件中的类也就一清二楚来了,因为校验已经完成,加载哪个类就生成哪个类对象

7、activity执行attach方法,初始化成员变量

8、执行onCreate方法

9、onCreate之后进入onStart生命周期,注意stop = false

10、放入mActivities,

11、进入onResume生命周期 

12、回调activity中的方法

13、performRestart()不执行

14、执行onResume

15、activity运行后,启动者要进入onStop生命周期,加入Idler

16、Idler的存放

 

17、Idler执行的优先级

 

18、从上图看idler只执行一次,且当前消息队列为空或者是消息均未到达执行事件点即无执行的消息是执行,执行代码如下图

19、AMS中的方法

20、activityIdleInternalLocked

21、执行stop

22、scheduleStopActivity

23、执行stop

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值