为了更准确的答案,你把你的代码放在这里。在这里,Android内存是有限的,所以VM可以删除任何代码,它认为是不必要的。
查看活动生命周期方法,特别是onResume,并确保您完美了解。许多应用程序崩溃只是为了不正常使用活动生命周期方法。
活动的另一个重要设计考虑是,无论持久性数据发生什么事情,您应该使用一些默认值显示其UI。所以假设是这样的,如果我有数据我会显示,如果我不,我真的不在乎。您的用户界面永远不会与数据无关或无数据崩溃。您可以使用String.xml来存储一些默认值,甚至在布局中。
如果你仍然想去单身班,这是非常好的,但确保你每次尝试访问您的单身人士时进行以下检查。
if (instance==null)
instance=Singleton.getInstance()
您的getInstance()方法不仅返回当前实例,还将确保
>它初始化所有对象和变量
>其他单例方法作为实例方法
不要静态地从一个活动访问数据到另一个活动。对于您现在面临的类型问题,Android不是特别好,也不是很好的OOP编程实践。
SharedPreference是坚持数据的好方法,如果满足你的要求去做。
如果您要传递来自不同Android组件的数据,例如Activity,Service或BroadcastReciever,您可以将其放入捆绑包中,并作为意图发送。而且,一如以往,它们都是SQLLite数据存储,文件IO等。