Android应用程序上下文是否会被破坏?

use*_*210 10 android android-context

我使用我的Android应用程序的应用程序Context作为我的应用程序的"当前状态"信息的存储区域.

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

这通常发生在用户点击"Home",执行其他操作,然后最终回到应用程序中时 - 它会尝试返回到之前的状态,但应用程序Context已经神秘地丢失了以前保存的所有状态信息(在我的情况,几个整数和几个字符串).

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

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

Che*_*mon 5

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

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