美文网首页
Android 8.0 Activity启动流程

Android 8.0 Activity启动流程

作者: 瀚海江天 | 来源:发表于2020-03-31 13:52 被阅读0次

1.com.android.launcher3.
1.1luncher.java ------startActivitySafely()方法调用

2.frameworks/base/core/java/android/app/
2.1 Activity.java ------ startActivityForResult(@RequiresPermission Intent intent, int
requestCode, @Nullable Bundle options)
2.2Instrumentation.java ----execStartActivity();

2.2.1 ActivityManager.getService()
通过ServiceManager管理ActivityManagerService
ServiceManager.getService(Context.ACTIVITY_SERVICE)
获取到ActivityManager
IActivityManager am = IActivityManager.Stub.asInterface(b)

2.2.2 ActivityManagerService.startActivty() -->startActivityAsUser()

2.2.3 ActivityManagerService.startActivityAsUser()

2.2.4 ActivityStarter.startActivityMayWait()

2.2.5 ActivityStarter.startActivityLocked()--ActivityStarter.startActivity() -->startActivityUnChecked()

2.3 ActivityStackSupervisor.java resumeFocusedStackTopActivityLocked()
-->startSpecificActivityLocked() --->realStartActivityLocked()

2.4 ActivityThread.java --->ApplicationThread.scheduleLaunchActivity()

-->ActivityThread.sendMessage()--->ActivityThread.performLaunchActivity()

2.5 Instrumentation.callActivityOnCreate()

2.6 Activity.performCreate()

相关文章

网友评论

      本文标题:Android 8.0 Activity启动流程

      本文链接:https://www.haomeiwen.com/subject/yqziuhtx.html