Android源码——Activity进程内启动

进程内启动Activity
  1. MainActivity组件向ActivityManagerService发送一个启动SubActivityInProcess组件的进程间通信请求;
  2. ActivityManagerService首先将要启动的SubActivityInProcess组件的信息保存下来,然后再向MainActivity组件发送一个进入终止状态的进程间通信请求;
  3. MainActivity组件进入到中止状态后,向ActivityManagerService发送一个已进入中止状态的进程间通信请求,以便ActivityManagerService可以继续执行启动SubActivityInProcess组件的操作;
  4. ActivityManagerService发现用来运行SubActivityInProcess组件的应用程序已经存在,将第2步保存下来的SubActivityInProcess组件信息发送给应用程序进程,以便它可以将SubActivityInProcess组件启动起来;
  5. ActivityManagerProxy.startActivity
  6. ActivityManagerService.startActivity
  7. ActivityStack.startActivityMayWait
  8. ActivityStack.startActivityLocked
  9. ActivityStack.startActivityUncheckedLocked
  10. ActivityStack.resumeTopActivityLocked
  11. ActivityStack.startPausingLocked
  12. ApplicationThreadProxy.schedulePauseActivity
  13. ApplicationThread.schedulePauseActivity
  14. ActivityThread.queueOrSendMessage
  15. H.handleMessage
  16. ActivityThread.handlePauseActivity
  17. ActivityManagerProxy.activityPaused
  18. ActivityManagerService.activityPaused
  19. ActivityStack.activityPaused
  20. ActivityStack.completePauseLocked
  21. ActivityStack.resumeTopActivityLocked
  22. ActivityStack.startSpecificActivityLocked
  23. ActivityStack.realStartActivityLocked
  24. ApplicationThreadProxy.scheduleLaunchActivity
  25. ApplicationThread.scheduleLaunchActivity
  26. ApplicationThread .queueOrSendMessage
  27. H.handleMessage
  28. ActivityThread.handleLaunchActivity
  29. ActivityThread.performLaunchActivity
  30. SubActivityInProcess.onCreate
 
新进程中启动Activity
posted @ 2016-07-26 16:21  ithaibo  阅读(559)  评论(0)    收藏  举报
请留下你的高见