Android应用程序(应用程序类扩展) - 一段时间后的null对象

时间:2015-11-19 11:01:08

标签: android

在我的Android应用程序中,我扩展了"应用程序"类并将其用作单例。我在那里设置了我的用户"对象所以我可以从任何地方访问它。出于某种原因,该对象变为null。我已经放了日志,看到没有什么"设置"该对象为null。

我注意到的是,在日志中我打印了"应用程序"对象的Id(内存#),当用户对象为空时,"应用程序"对象已更改id(由于某种原因,新实例?)。但是"应用程序"中的其他内容;对象很好,只有用户有问题。

任何可能导致此问题的想法?我想是内存不足还是什么?关于如何克服这个问题而不必进行重大更改的任何想法(比如添加一个sqlite?)

2 个答案:

答案 0 :(得分:1)

在android中是commont,你必须检查它是否为null值并再次加载它们。

答案 1 :(得分:1)

  

任何可能导致此问题的想法?

很可能你的对象没有被使用或链接,所以Android OS将它作为​​一次性使用,垃圾收集器释放了它的内存分配

  

有关如何克服这一点而不必进行重大更改(如添加sqlite?)的任何想法

如果没有看到您的代码,可能很难提供帮助,但请遵守以下准则:

1 - 保持与您当前使用的资源的直接链接(因此,添加链接到原始对象的属性很好

Boolean isFatherObjectAlive = "Original Object"."flag";

2 - 保持命令执行或直接使用单例对象的指令

singletonObject.doSomething();