当设备长时间处于睡眠状态时,Android是否会删除本地变量



在我的应用程序中,我将一些数据保存在本地变量中,有时从睡眠状态打开应用程序后,它会报告本地变量上的空指针异常,该异常在设备进入睡眠状态之前就存在。系统有可能删除这些变量吗?我该如何解决这个问题?

可能您指的是类字段,而不是局部变量。在安卓系统中,如果系统需要更多内存并且应用程序处于后台,则"查看生命周期"视图(如"活动"one_answers"碎片"(可能会被破坏。当这种情况发生时,很少调用方法。例如,当要清除活动时,会调用onPause((、onStop((和onDestroy(((更多(。您可以覆盖这些方法,并将当前应用程序状态保存在SharedPreferences或数据库中。

此外,您还需要检查是否没有创建新的"活动",如果发生这种情况,字段将为空。

最新更新