2011-9-27 21:12:34
前面我们在分析Activity启动过程的时候,看到同一个应用程序的Activity一般都是在同一个进程中启动,
事实上,Activity也可以像Service一样在新的进程中启动,这样,一个应用程序就可以跨越好几个进程了,
本文就分析一下在新的进程中启动Activity的方法和过程。
在前面Android进程间通信(IPC)机制Binder简要介绍和学习计划一文中,
我们提到,在Android系统中,每一个应用程序都是由一些Activity和Service组成的,一般Service运行在独立的进程中,
而Activity有可能运行在同一个进程中,也有可能运行在不同的进程中。
在前面Android系统在新进程中启动自定义服务过程(startService)的原理分析一文中,我们已经介绍了使用Activity.startService接口来在新进程中启动Service的过程,
然后又在前面Android应用程序内部启动Activity过程(startActivity)的源代码分析一文中介绍了使用Activity.startActivity接口来在原来的进程中启动Activity的过程,
现在,我们就来看一下同一个Android应用程序如何在新的进程中启动新的Activity。
有可能在同一个进程中 也有可能不在同一个进程中