- application启动的两种方式:点击图标启动、startActivity跳转启动,两种方式都会调用ActivityManagerServices(AMS)的startActivity完成。
- AMS进行判断与准备工作
- 将当前Activity置为pause
- AMS通过ApplicationThread.schedulePauseActivity完成
- ActivityThread主线程调用Activity.onPause,并通知WindowsManagerServices(WMS)改变窗口界面
- 进程通知AMS已完成pause请求
- AMS开始启动第二个Activity
- 若第二个Activity所属进程不存在则先进行启动Process.start,调用应用程序主线程的main函数
- 启动后通过attachApplication通知AMS
- AMS通过ApplicationThread.scheduleLaunchActivity向应用程序请求启动指定的Activity,再由进程自己完成后续的显示工作
9.5
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- It's right time to learn Android's Framework ! 前言 一个App是怎...
- AndroidSmall框架是android中一个非常优秀的插件化框架,有时我们不仅要学会使用它,也要去理解它的原...