10

我使用我的 Android 应用程序的应用程序上下文作为我的应用程序“当前状态”信息的存储区域。

我发现在现场,有些情况下这些信息会在某些人的设备上消失,导致各种 NullPointerExceptions,因为我希望当应用程序恢复并开始重建必要的活动时数据会在那里。

这通常发生在用户点击“主页”,执行其他操作,然后最终回到应用程序 - 它试图回到之前的位置,但应用程序上下文神秘地丢失了所有之前保存的状态信息(在我的情况,几个整数和几个字符串)。

我知道这是一个非常模糊的问题,但是是否有任何情况(除了用户使用“返回”完全退出应用程序)即使应用程序没有终止,应用程序上下文也会被完全破坏?

有没有更好的方法来维护持久状态信息?

4

1 回答 1

5

是的,如果用户离开应用程序一段时间,应用程序可能会被杀死并重新启动。您可能想阅读有关流程和生命周期的这一部分。

您应该找到一个合适的位置将状态保存到持久存储中。如果它只是几个整数和字符串,那么在它们更改时将它们保存到共享首选项应该非常简单。请参阅数据存储共享首选项

于 2010-11-09T16:49:03.003 回答