美文网首页
Android Context

Android Context

作者: 凯玲之恋 | 来源:发表于2021-01-03 22:53 被阅读0次

    各个Context 类的关系图

    16ca48ecb5048046.png

    Context 作用是啥

    看它能做啥,看看主要提供了哪些接口了。

    四大组件相关 包括启动 Activity、Broadcast、Service,获取 ContentResolver 等
    获取系统/应用资源 包括 AssetManager、PackageManager、Resources、System Service 以及 color、string、drawable 等
    获取应用相关信息
    文件相关
    数据库相关 包括打开数据库、删除数据库、获取数据库路径等
    其它 比如设置 ComponentCallbacks,即监听配置信息改变、内存不足等事件的发生

    ContextImpl 和 ContextWrapper 有啥区别?

    Class Diff
    ContextImpl 真正实现了Context中所有的函数 (真正厉害的!)
    ContextWrapper Context 的代理类,所有的操作都是通过内部成员 mBase 完成的
    ContextThemeWrapper 内部包含了与主题相关的接口,有自己的 Theme 以及 Resource,并且 Resource 可以传入自己的配置初始化

    Activity、Service、Application 各自的Context有啥区别?

    API
    Activity 调用 createBaseContextForActivity
    Service/Application 调用 createAppContext
    Provider 调用 createPackageContext
    BroadcastReceiver 直接从 Application.getBaseContext() 来获取 ContextImpl 对象

    参考

    Context都没弄明白?

    相关文章

      网友评论

          本文标题:Android Context

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