Android ApplicationContext接口深入分析

 更新时间:2022年11月22日 09:44:35   作者:宋冠巡  
ApplicationContext是Spring应用程序中的中央接口,由于继承了多个组件,使得ApplicationContext拥有了许多Spring的核心功能,如获取bean组件,注册监听事件,加载资源文件等

需求

Android(Kotlin)获取应用全局上下文 ApplicationContext。

希望可以在应用内任意位置获取上下文,而不是仅在 Activity 或 Service 里才能获取。

ApplicationContext 是和应用全局相关的。

实现方法

  • 自定义 MyApplication,保存自身的 Application 实例。
  • MyApplication 配置到 AndroidManifest 中。
  • 定义顶层属性 appContext,获取 Application 实例的applicationContext。

代码

package com.example.fileio
import android.app.Application
/**
 * 自定义 Application
 */
class MyApplication : Application() {
    companion object {
        lateinit var application: Application
    }
    init {
        application = this
    }
}
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools">
    <application
        android:name=".MyApplication"
    </application>
</manifest>

上下文工具类 ContextUtil.kt

package com.example.fileio.util
import android.content.Context
import com.example.fileio.MyApplication
val appContext: Context = MyApplication.application.applicationContext

调用

可以在应用内任意位置获取 ApplicationContext。

Application

用于维护全局应用程序状态的基类。

Application | Android Developers (google.cn)

getApplicationContext()

返回当前进程的单个全局Application对象的上下文。

当需要一个生命周期与当前上下文分离的上下文时,才应该使用该上下文。

该上下文与进程的生命周期关联,而不是与当前组件相关联。

参考

到此这篇关于Android ApplicationContext接口深入分析的文章就介绍到这了,更多相关Android ApplicationContext内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Android使用ViewPager实现顶部tabbar切换界面

    Android使用ViewPager实现顶部tabbar切换界面

    这篇文章主要为大家详细介绍了使用ViewPager实现顶部tabbar切换界面,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-08-08
  • Android制作微信添加多个图片放大图片功能

    Android制作微信添加多个图片放大图片功能

    这篇文章主要介绍了Android制作微信添加多个图片放大图片功能,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2024-03-03
  • android WebView组件使用总结

    android WebView组件使用总结

    浏览器控件是每个开发环境都具备的,这为马甲神功提供了用武之地,windows的有webbrowser,android和ios都有webview;本篇主要介绍android的webview之强大,感兴趣的朋友可以研究下
    2012-12-12
  • android利用消息机制获取网络图片

    android利用消息机制获取网络图片

    这篇文章主要为大家详细介绍了android利用消息机制获取网络图片的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-03-03
  • Flutter版本的自定义短信验证码实现示例解析

    Flutter版本的自定义短信验证码实现示例解析

    这篇文章主要介绍了Flutter版本的自定义短信验证码实现示例解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-08-08
  • Android客户端首次启动引导界面

    Android客户端首次启动引导界面

    这篇文章主要为大家详细介绍了Android客户端首次启动引导界面,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-07-07
  • Android高级UI特效仿直播点赞动画效果

    Android高级UI特效仿直播点赞动画效果

    这篇文章主要介绍了Android高级UI特效仿直播点赞动画效果,最近比较火的抖音快手直播视频都有这样的效果,下面脚本之家小编给大家带来android 仿直播点赞效果的实现代码,需要的朋友参考下吧
    2018-03-03
  • android 一些工具类汇总

    android 一些工具类汇总

    本文给大家汇总介绍了一些常用的Android工具类,非常的简单实用,有需要的小伙伴可以参考下
    2016-08-08
  • OpenGL ES纹理详解

    OpenGL ES纹理详解

    这篇文章主要为大家详细介绍了OpenGL ES纹理的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-05-05
  • Flutter实现App功能引导页

    Flutter实现App功能引导页

    这篇文章主要为大家详细介绍了Flutter实现App功能引导页,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-07-07

最新评论