Android:当应用程序进入后台时,Singleton类数据变为null

时间:2015-07-08 07:43:52

标签: android json garbage-collection singleton

我在我的Android应用程序中使用单例类来存储从webserivce获取的数据。 问题到来的时候,应用程序进入后台,几分钟后进入前台,应用程序会崩溃,因为存储在singleton类中的值变为null。 我的电话的垃圾收集使值为null。 我曾尝试过这种方法来解决这个问题。但它仍然会到来

    private static SingleTon uniqueInstance;

  private SingleTon() {
    }

  public static synchronized SingleTon getInstance() {
    if (uniqueInstance == null) {
      uniqueInstance = new SingleTon();
    }
    return uniqueInstance;
  }

解决此问题的任何方法。

1 个答案:

答案 0 :(得分:0)

您的应用程序可能会在后台回收某些资源时被杀死。 如果您的应用程序被杀死,那么所有静态变量将再次自动为null。 如果您要保存一些重要数据,请将其保存在storage option中。我建议您始终使用SingleTon.getIntance()访问您的单身人士。这样,如果您的实例被终止,您可以初始化它。

不要在单例类中使用静态方法......这是毫无意义的。