文章目录

在Android中调用系统服务很多时候都需要用到Context对象,如果是在MainActivity等Activity的子类中自然没有问题,调用系统服务默认会添加context.或者可以显式的使用MainActivity.this,但是在非Activity子类的情况下就要求在构造该类对象的时候,将context传递进去,不免出现反复传递context的现象,毕竟程序员懒是一种美德,所以找到了如下的方法可以全局获取context。非常简单首先在AndroidManifest.xml中声明自定义的Application的子类

1
2
3
4
<application
android:name="com.njuptjsy.cloudclient.MyApplication"
......
/application>

接着在项目中新建一个MyApplication类继承Application

1
2
3
4
5
6
7
8
9
10
public class MyApplication extends Application {
private static Context context;

public void onCreate() {
context = getApplicationContext();
}
public static Context getContext() {
return context;
}
}

这样就可以通过MyApplication的静态方法getContext()全局获取context对象了

文章目录