Android笔记(八)Context
来源:互联网 发布:python上传图片的步骤 编辑:程序博客网 时间:2024/06/05 19:09
本篇文章是看gitYuan博客Context理解一文作出的笔记
先来张类图,有个大概的框架概念
我们常用的Application、Activity、Service都间接继承自ContextWrapper类,该类继承自Context抽象类,ContextImpl也继承自Context抽象类。ContextWrapper类对Context进行了包装,包装的方式为:将Context作为自己的一个属性。而该属性的赋值(实例化)是通过ContextImpl来完成的。所以一定程度上,ContextWrapper也是对ContextImpld的封装。此外,可以说ContextImpl是Context的唯一实现类(ContextImpl实现了其中的方法,虽然说ContextWrapper也实现了这些方法,但它是通过实调用mBase.XXX()来实现的),例如
在Context.java中
public abstract AssetManager getAssets();
在ContextImpl.java中
public AssetManager getAssets(){ return getResources().getAssets();}
在ContextWrapper.java中
public AssetManager getAssets(){ return mBase.getAssets();//mBase为Context属性}
四大组件初始化流程
组件的初始化过程都是在ActivityThread类中完成的。
Activity组件
performLaunchActivity()
Service组件
handleCreateService()
BroadCast Receiver组件
handleCreateReceiver()
以上过程是静态广播接收者, 即通过AndroidManifest.xml的标签来申明的BroadcastReceiver;如果是动态广播接收者,则不需要再创建那么多对象, 因为动态广播的注册时进程已创建, 基本对象已创建完成. 那么只需要回调BroadcastReceiver的onReceive()方法即可.
installProvider
installProvider()
Application
createBinderApplication()
- Android笔记(八)Context
- android学习笔记(八)
- Android学习笔记(八)
- Android学习笔记(八)
- Android Context---学习笔记
- Android笔记:context是什么东西
- Android学习笔记之Context
- Android实例剖析笔记(八)
- android学习笔记(八)SharedPreferences、editor
- android学习笔记(八)SharedPreferences、editor
- Android学习笔记(八):单元测试
- Android学习笔记(八) 使用菜单
- Android开发秘籍学习笔记(八)
- android学习笔记(八)SharedPreferences、editor
- android学习笔记(八)SharedPreferences、editor .
- Android入门学习笔记整理(八)
- android Context(未完成)
- android基础(Context)
- MYSQL分表原理
- Java基本类型与类型转换(1)
- 隐形滚动条
- 为结构体的字符数组成员赋十六进制形式表示的字符串
- 透视几何与摄像机模型
- Android笔记(八)Context
- hibernate实体类的创建规则---【小白系列】0基础到熟练应用hibernate框架(六)
- JZOJ 100019【NOI2017模拟6.26】A
- 用好宏数字签名让安全警告不再有听语音
- MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk. Com
- tensorflow pip安装失败
- Android重要知识点解析整理
- 机房重构-登陆
- 单片机字库建立