【发布时间】:2013-11-30 15:30:28
【问题描述】:
据我了解,Android 中的应用程序是一个单例(如果我错了,请纠正我),我们总是只有一个应用程序上下文实例。
那么,从这个角度来看,将应用程序上下文保存在我的应用程序类中是一种不好的做法吗? 会导致大量内存泄漏吗?
这是一个例子:
public class MyApp extends Application {
private static Context appContext = null; // <-- here is the thing!
@Override
public void onCreate() {
appContext = this;
}
public static Context getApplicationContextSingleton () {
return MyApp.appContext;
}
}
这样做的原因是全局访问的类,例如 PreferencesManager,大多数具有静态方法的类总是需要上下文。因此,我没有每次都传递它(甚至将其存储在一个实例中,这可能很糟糕),而是考虑存储应用程序上下文。我没有看到哪些缺点?
【问题讨论】:
标签: android design-patterns android-context