码迷,mamicode.com
首页 > 移动开发 > 详细

Android Context创建过程

时间:2015-11-09 00:08:56      阅读:218      评论:0      收藏:0      [点我收藏+]

标签:

 

    特定的资源或者类构成了Android应用程序的运行上下文环境 

        PackageManager, ClassLoader, Assert等等

    Android应用程序窗口的运行上下文环境是通过ContextImpl类来描述的,即每一个Activity组件都关联有一个ContextImpl对象。ContextImpl类继承了Context类,它与Activity组件的关系如图

     技术分享

    这个类图在设计模式里面就可以称为装饰模式

 

    Activity组件以后就可以通过这个ContextImpl对象来执行一些具体的操作,例如,启动Service组件注册广播接收者启动Content Provider组件等操作。同时,ContextImpl类又通过自己的成员变量mOuterContext来引用了与它关联的一个Activity组件,这样,ContextImpl类也可以将一些操作转发给Activity组件来处理。

 

 

    在前面Android应用程序启动过程源代码分析一文中,我们已经详细分析过一个Activity组件的启动过程了。在这个启动过程中,最后一步便是通过ActivityThread类的成员函数performLaunchActivity在应用程序进程中创建一个Activity实例,并且为它设置运行上下文环境,即为它创建一个ContextImpl对象。接下来,我们就从ActivityThread类的成员函数performLaunchActivity开始,分析一个Activity实例的创建过程,以便可以从中了解它的运行上下文环境的创建过程,如图所示:

    技术分享

 

Android Context创建过程

标签:

原文地址:http://www.cnblogs.com/carlo/p/4948675.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!