0

我似乎遇到了一个错误。当显示 FragmentB 并且已经过夜,然后在早上我打开应用程序时 FragmentA 首先显示。当我点击后退按钮时,FragmentA 似乎消失了,但在它下面似乎隐藏了另一个 FragmentA。当我再次尝试正常“使用”该应用程序时,它会崩溃。

当我主动使用它时,我的应用程序运行起来就像奇迹一样。唯一的区别是当我长时间离开手机时(当我睡觉时)

正如我所说,当我今天早上醒来并准备再次测试我的应用程序时,我发现了这个错误。我试图从昨晚开始重新创建我的动作,并且该应用程序运行良好:/

有任何想法吗?

4

1 回答 1

0

这很可能与Android的垃圾收集有关。当您的应用处于后台并且其他进程正在运行时,垃圾收集可能会删除您的应用的数据或状态,从而导致其行为异常。应用程序在后台运行的时间越长,这一点尤其正确。

可能的解决方案:

  • 您是否将应用程序的状态保存在 savedInstanceState 包中并在 onRestoreInstanceState() 方法中重新加载?
  • 如果您认为这可能是 SQL 错误,则应保存变量,以便在程序恢复时重新加载重要值。

一些提示: http ://android-developers.blogspot.com/2009/02/track-memory-allocations.html

于 2013-09-26T06:40:20.587 回答