欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android全局获取Context实例详解

程序员文章站 2023-11-12 11:06:58
android全局获取context实例详解 在弹出toast 启动活动 发送广播 操作数据库 使用通知等等时都需要context 如果操作在活动中进行是很简单的,因为...

android全局获取context实例详解

在弹出toast 启动活动 发送广播 操作数据库 使用通知等等时都需要context

如果操作在活动中进行是很简单的,因为活动本身就是一个context对象

但是当逻辑代码脱离了activity类,此时使用context就需要一些技巧了:

我们可以定制一个自己的application类,以便管理程序内一些全局状态信息,比如全局context

代码如下:

public class myapplication extends application{
  
  private static context context;

  @override
  public void oncreate() {
    context = getapplicationcontext();
  }
  public static context getcontext(){
    return context;
  }
}

重写父类oncreate()方法,并通过调用getapplicationcontext()方法得到应用程序级别的context

然后提供静态的getcontext()方法,将取到的context进行返回

注意:记得在androidmanifest.xml文件的<application>标签下进行初始化myapplication类

<application
...
  android:name="com. ... .myapplication"  <——这里最好填上完整包名
...
</application>

这样就实现了全局获取context的机制,在应用程序里任何地方使用context只需调用 myapplication.getcontext()就可以了

如:

toast.maketext(myapplication.getcontext(),"全局context",toast.length_short).show();

如果还用到其他的application,则可以在myapplication中的oncreate()方法中调用其他application的初始化方法即可

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!