设为首页 加入收藏

TOP

Android中Context详解 ---- 你所不知道的Context
2014-11-24 11:50:18 来源: 作者: 【 】 浏览:0
Tags:Android Context 详解 ---- 知道

大家好, 今天给大家介绍下我们在应用开发中最熟悉而陌生的朋友-----Context类 ,说它熟悉,是应为我们在开发中


时刻的在与它打交道,例如:Service、BroadcastReceiver、Activity等都会利用到Context的相关方法 ; 说它陌生,完全是


因为我们真正的不懂Context的原理、类结构关系。一个简单的问题是,一个应用程序App中存在多少个Context实例对象呢?


一个、两个? 在此先卖个关子吧。读了本文,相信您会豁然开朗的 。


Context,中文直译为“上下文”,SDK中对其说明如下:


Interface to global information about an application environment. This is an abstract class whose implementation


for application-level operations such as launching activities, broadcasting and receiving intents, etc


从上可知一下三点,即:


1、它描述的是一个应用程序环境的信息,即上下文。


2、该类是一个抽象(abstract class)类,Android提供了该抽象类的具体实现类(后面我们会讲到是ContextIml类)。


3、通过它我们可以获取应用程序的资源和类,也包括一些应用级别操作,例如:启动一个Activity,发送广播,接受Intent


信息 等。。


于是,我们可以利用该Context对象去构建应用级别操作(application-level operations) 。


一、Context相关类的继承关系



相关类介绍:


Context类 路径: /frameworks/base/core/java/android/content/Context.java


说明: 抽象类,提供了一组通用的API。


源代码(部分)如下:


ContextIml.java类 路径 :/frameworks/base/core/java/android/app/ContextImpl.java


说明:该Context类的实现类为ContextIml,该类实现了Context类的功能。请注意,该函数的大部分功能都是直接调用


其属性mPackageInfo去完成,这点我们后面会讲到。


源代码(部分)如下:


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Android中Matrix的pre post set方.. 下一篇从源码中Activity 的定义来理解 A..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·Bash 脚本教程——Li (2025-12-26 07:53:35)
·实战篇!Linux shell (2025-12-26 07:53:32)
·整理了250个shell脚 (2025-12-26 07:53:29)
·HyperText Transfer (2025-12-26 07:20:48)
·半小时搞懂 HTTP、HT (2025-12-26 07:20:42)