关于Application得到上下文,getApplicationContext方法 空指针问题。

来源:互联网 发布:极品五笔2013优化版 编辑:程序博客网 时间:2024/05/01 13:19

application得到上下文,前提必须在application中的oncreate方法进行初始化。


解决:


public class AppUtils {    private static Application application;    public static void setApplication(Application application) {        if (AppUtils.application != null) {            throw new IllegalStateException("application already holded 'application'.");        }        AppUtils.application = application;    }    public static Context getContext() {        return application.getApplicationContext();    }}


在 applicaition 类中进行初始化

@Overridepublic void onCreate() {    super.onCreate();    //设置全局Context    AppUtils.setApplication(this);    Fresco.initialize(this);    initPackageName();}

这样做 可通过

Context context = AppUtils.getContext();

0 0