全局获取Context的技巧

全局获取Context的技巧

大家好,又见面了,我是全栈君。

全局获取Context的技巧

 

android开发中,非常多地方都要用到Context上下文这个类对象,比方:弹出 Toast

的时候须要、启动活动的时候须要、发送广播的时候须要、操作数据库的时候须要、使用通

知的时候须要等。

 

假设是在Activity中,那么获取这个context对象非常easy,由于Activity本身就继承Context。直接受用this就能够了。

 

可是对于比較复杂的逻辑,这些代码没有放在Activity中。那么。获取Context就显得不是那么easy了。

 

这里告诉大家一个技巧:

Android 提供了一个 Application 类。每当应用程序启动的时候,系统就会自己主动将这个类

进行初始化。

 而我们能够定制一个自己的 Application 类, 以便于管理程序内一些全局的状态信息,比方说全局 Context

1,新建一个类MyApplication继承Application.

代码例如以下:

package com.example.networktest;
public class MyApplication extends Application {
    private static Context context;
    @Override
    public void onCreate() {
        context = getApplicationContext();
    }
    public static Context getContext() {
        return context;
    }
}

2,在 AndroidManifest.xml 文件的<application>标签下进行指定就能够了,代码例如以下所看到的:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.networktest"
android:versionCode="1"
android:versionName="1.0" >
……
<application
android:name="com.example.networktest.MyApplication"
…… >
……
</application>
</manifest>

注意:指定 MyApplication 的时候一定要加上完整的包名,不然系统将无法找到这

个类。

 

这样我们就已经实现了一种全局获取 Context的机制,之后无论你想在项目的不论什么地方

使用 Context,仅仅须要调用一下 MyApplication.getContext()就能够了。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/116056.html原文链接:https://javaforall.net

(0)
上一篇 2022年1月26日 下午5:00
下一篇 2022年1月26日 下午6:00


相关推荐

  • 千问 (阿里智能问答AI大模型) v6.2.1.2786 安卓版

    千问 (阿里智能问答AI大模型) v6.2.1.2786 安卓版

    2026年3月13日
    2
  • 解决:Failed to load ApplicationContext

    解决:Failed to load ApplicationContext解决 Failedtoload 一般按照如下步骤即可解决第一步 检查注解检查是否有如下注解 RunWith SpringRunner class SpringBootTe 如果没有 添加依赖并补充注解 dependency groupId junit groupId artifactId junit artifactId version 4 13 lt version dependency

    2026年3月17日
    2
  • SecureCRT 安装与激活成功教程教程

    SecureCRT 安装与激活成功教程教程SecureCRT 的安装与激活成功教程 过程很详细 1 首先在下载你需要的版本 https securecrt en softonic com 2 下载完成后双击文件进行安装 如下图 3 点击 Next 继续 4 安装许可协议 选中 IAcceptthe 然后点击 Next 5 继续点击 Next 6 选中 C

    2026年3月19日
    2
  • 配置本地DNS服务器地址「建议收藏」

    配置本地DNS服务器地址「建议收藏」PC端使用公共DNSWindows系统1.在电脑右下角的网络图标上单击鼠标右键可以看到”打开网络和共享中心”选项,点击进入设置2.点击左侧的”更改适配器设置”3.在选中的网络连接上单击鼠标右键,选择”属性”4.单击”网络”选项卡。在”此连接使用下列项目”下,选中”Internet协议版本4(TCP/IPv4)”,然后点击”属性”,或者直接双击”Internet协议版本4(TCP/IPv4)”5.勾选”使用下面的DNS服务地址”,然后在”首选DNS

    2022年5月7日
    255
  • 完整教程:一文讲清:AI、AGI、AIGC、NLP、LLM、ChatGPT的区别与联系

    完整教程:一文讲清:AI、AGI、AIGC、NLP、LLM、ChatGPT的区别与联系

    2026年3月15日
    4
  • php gmssl,GmSSL是什么

    php gmssl,GmSSL是什么GmSSL 是一个开源的密码工具箱 支持 SM2 SM3 SM4 SM9 ZUC 等国密 国家商用密码 算法 SM2 国密数字证书及基于 SM2 证书的 SSL TLS 安全通信协议 支持国密硬件密码设备 提供符合国密规范的编程接口与命令行工具 GmSSL 是一个开源的密码工具箱 支持 SM2 SM3 SM4 SM9 ZUC 等国密 国家商用密码 算法 SM2 国密数字证书及基于 SM2 证书的 SSL TLS

    2026年3月19日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号