Android程序中访问资源时需要提供Context,一般来说只有在各种component中(Activity, Provider等等)才能方便的使用api来获取Context;在工具类中获取context则不可以用getActivity之类的来直接获取,一般来说,我们会单独创建一个类(MyAppLication)继承Application,来存放整个应用程序的全局静态变量,我们可以将Context放在该类中。
import android.app.Application;
public class MyApplication extends Application {
public static Context context;
@Override
public void onCreate() {
// TODO Auto-generated method stub
super.onCreate();
// 初始化全局变量
context = MyApplication.this;
}
}
注意,一定要在manifest中将<application>设置application的android:name="mypackage.MyApplication"。否则是不能在工具类中调用MyApplication.context的。
以上都是博主自己的一些学习笔记和理解,有不对的欢迎大家指出。