在我们平常的开发中,很多时候我们新建的一个普通的java类文件(非Activity类的),在某些地方我们需要用到Context,弹出Toast的时候要、启动活动的时候要、发送广播的时候要、操作数据库和弹出通知的时候等。
由于活动本身就是一个Context对象,在Activity活动里面获得Context很简单,但是当很多逻辑代码他不是Activity的时候,那怎么能获取到Context呢?当然你可以在要调用的方法里面添加一个Context context 参数,但是还有一种更好的方法可以解决。
Android提供了一个Application类,每当程序启动的时候,系统会自动将这个类进行初始化,因此我们常可以看到某个程序引用第三方sdk需要初始化配置时,一般都会自定义一个Application类。而我们可以定制一个自己的Application类,以便与管理程序内一些全局的状态。
定义一个自己的Application并不复杂,首先建立一个MyApplication类继承于Application
代码如下:
public class MyApplication extends Application {
private static Context context;
@Override
public void onCreate() {
context = getAppl