什么时候发布静态上下文

时间:2015-06-28 16:40:53

标签: android

每个人都会告诉你,保持静态Context使其不被GC限制,这很糟糕。但是,如果您需要一些依赖于Context的静态资源,则需要该静态字段。所以你什么时候发布它?我查看了Facebook SDK源代码并保留了参考资料。有没有办法连接应用程序生命周期来释放引用,或者是否可以接受静态应用程序上下文?

1 个答案:

答案 0 :(得分:0)

应用程序上下文正常,因为在您的应用程序以任何方式运行时,它永远不会被垃圾回收。你不想做的是持有一个活动上下文,因为它包含各种其他非上下文相关的引用。

我不确定你要做什么,但这里是一个存储应用程序上下文的类的例子。

class myClass {
    private final Context mContext;

    public myClass(Context context) {
        this.mContext = context.getApplicationContext();
    }

    public String getSomeString() {
        return mContext.getString(R.string.name);
    }
}