Context分析

Context分析

1.主要的context如下:

        Activity和Application都是直接或间接继承ContextWrapper的。ContextWrapper类使用了装饰者模式,它里面的mBase实际上是指向的ContextImpl。Application和Context的对象在创建前都会创建对应的ContextImpl,然后通过attachBaseContext方法传入给mBase对象。

        DecorContext是在PhoneWindow里面初始化的,只有在Activity对应的PhoneWindow才会generateDecor创建DecorContext,然后传入给DecorView使用。DecorContext初始化的时候,会先传入application和activity对象(context),并会创建自己的ContextImpl传入base。

 

2.继承关系如下:

Context分析_第1张图片

你可能感兴趣的:(frameworks)