Android 何时释放静态上下文
每个人都会告诉你,保持一个静态的Android 何时释放静态上下文,android,Android,每个人都会告诉你,保持一个静态的Context可以防止它被GC'ed,这很糟糕。但是,如果您需要一些依赖于上下文的静态资源,则需要该静态字段。那你什么时候发布?我查看了Facebook SDK的源代码,他们保留了一个参考。是否有方法连接到应用程序生命周期以释放引用,或者静态应用程序上下文是否可以接受?应用程序上下文可以,因为在应用程序以任何方式运行时,它都不会被垃圾收集。您不想做的是保存一个活动上下文,因为它包含各种其他的、与上下文无关的引用 我不确定您到底想做什么,但下面是一个存储应用程序上下
Context
可以防止它被GC'ed,这很糟糕。但是,如果您需要一些依赖于上下文的静态资源,则需要该静态字段。那你什么时候发布?我查看了Facebook SDK的源代码,他们保留了一个参考。是否有方法连接到应用程序生命周期以释放引用,或者静态应用程序上下文是否可以接受?应用程序上下文可以,因为在应用程序以任何方式运行时,它都不会被垃圾收集。您不想做的是保存一个活动上下文,因为它包含各种其他的、与上下文无关的引用
我不确定您到底想做什么,但下面是一个存储应用程序上下文的类的示例
class myClass {
private final Context mContext;
public myClass(Context context) {
this.mContext = context.getApplicationContext();
}
public String getSomeString() {
return mContext.getString(R.string.name);
}
}