在我的Android应用程序中,我扩展了"应用程序"类并将其用作单例。我在那里设置了我的用户"对象所以我可以从任何地方访问它。出于某种原因,该对象变为null。我已经放了日志,看到没有什么"设置"该对象为null。
我注意到的是,在日志中我打印了"应用程序"对象的Id(内存#),当用户对象为空时,"应用程序"对象已更改id(由于某种原因,新实例?)。但是"应用程序"中的其他内容;对象很好,只有用户有问题。
任何可能导致此问题的想法?我想是内存不足还是什么?关于如何克服这个问题而不必进行重大更改的任何想法(比如添加一个sqlite?)
答案 0 :(得分:1)
在android中是commont,你必须检查它是否为null值并再次加载它们。
答案 1 :(得分:1)
任何可能导致此问题的想法?
很可能你的对象没有被使用或链接,所以Android OS将它作为一次性使用,垃圾收集器释放了它的内存分配
有关如何克服这一点而不必进行重大更改(如添加sqlite?)的任何想法
如果没有看到您的代码,可能很难提供帮助,但请遵守以下准则:
1 - 保持与您当前使用的资源的直接链接(因此,添加链接到原始对象的属性很好
Boolean isFatherObjectAlive = "Original Object"."flag";
2 - 保持命令执行或直接使用单例对象的指令
singletonObject.doSomething();