四大组件的工作过程
9.2 Activity的工作过程
performLaunchActiviy
从ActivityClientRecord中获取启动的Activity的组件信息
通过InStrumentation的newActivity方法使用类加载前创建Activity对象
通过loadedApk的makeApplication方法尝试创建Application对象,创建过程与Activity对象创建过程类似,完毕后会通过Instrumentation的callApplicationOnCreate来调用Application的onCreate方法
创建ContextImpl对象并通过Activity的attach方法来完成一些重要数据的初始化(ContextImpl位Context的具体实现,通过Activity的attach方法来和Activity建立关联,在attach中Activity还会完成Window的创建并建立自己和Window的关联)
调用Activity的onCreate方法 - InStrumentation:callActivityOnCreate
9.3 Service的工作工程
Service有启动(用于执行后台计算)和绑定(用于其他组件和Service的交互)两种状态,这两种状态可以共存。