美文网首页
Context基本概念

Context基本概念

作者: swartz | 来源:发表于2016-06-21 22:52 被阅读36次

    Context是什么?

    1) Context是一个抽象类,其通用实现在ContextImpl类中。

    2) Context:是一个访问application环境全局信息的接口,通过它可以访问application的资源和相关的类,其主要功能如下:

    启动Activity

    启动和停止Service

    发送广播消息(Intent)

    注册广播消息(Intent)接收者

    可以访问APK中各种资源(如Resources和AssetManager等)

    可以访问Package的相关信息

    APK的各种权限管理

    从以上分析可以看出,Context就是一个对APK包无所不知的大管家,大家需要什么,直接问它就可以了。

    Context与View的关系

    View与Context(或Activity)的关系类似于明星与经纪人的关系,所以创建View时,必须明确指定其Context(即经纪人或大管家),否则View就成不了明星。

    Context家族关系

    Context是一个抽象基类,我们通过它访问当前包的资源(getResources、getAssets)和启动其他组件(Activity、Service、Broadcast)以及得到各种服务(getSystemService),当然,通过Context能得到的不仅仅只有上述这些内容。对Context的理解可以来说:Context提供了一个应用的运行环境,在Context的大环境里,应用才可以访问资源,才能完成和其他组件、服务的交互,Context定义了一套基本的功能接口,我们可以理解为一套规范,而Activity和Service是实现这套规范的子类,这么说也许并不准确,因为这套规范实际是被ContextImpl类统一实现的,Activity和Service只是继承并有选择性地重写了某些规范的实现。

    1) Context是一个抽象类,其通用实现在ContextImpl类中。

    2) Context:是一个访问application环境全局信息的接口,通过它可以访问application的资源和相关的类,其主要功能如下:

    启动Activity

    启动和停止Service

    发送广播消息(Intent)

    注册广播消息(Intent)接收者

    可以访问APK中各种资源(如Resources和AssetManager等)

    可以访问Package的相关信息

    APK的各种权限管理

    从以上分析可以看出,Context就是一个对APK包无所不知的大管家,大家需要什么,直接问它就可以了。

    相关文章

      网友评论

          本文标题:Context基本概念

          本文链接:https://www.haomeiwen.com/subject/jvojdttx.html