context在很多地方都有用到,Toast,Activity,Notification,db,Broadcast等等,很多都得到Activity的context,但有时要用到全局的context怎么办呢?这时就要定义一个全局的context。
一、创建MyApplication 继承自Application,重写onCreate()方法,方法内调用getApplication()方法得到全局context,静态的方法getContext()方法返回获取到的context;
public class MyApplication extends Application {
private static Context context;
@Override
public void onCreate() {
context = getApplicationContext();
}
public static Context getContext() {
return context;
}
}
二、修改AndroidManifest.xml 文件,设置Application的name为上面的MyApplication;
<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.getContext()即可得到全局context。