在我的应用程序中,我有一个加载视图,通过访问API并将一些启动信息带回存储来设置应用程序。我暂时将它存储在Application类中。数据类型的一个例子就是可以说是一个可服务的城市列表。
流程是:
加载视图 - >主菜单 - >等等
如果我退出应用程序并返回,它通常从主菜单视图开始并点击onresume,一切都很好。但有时如果我等待一段时间并且操作系统可能会清除一些内存,我会回来再次进入主菜单,但这次通过调用onCreate从头开始。但似乎应用程序数据已被删除。
我只是想知道为什么,如果它正在擦除应用程序数据,是不是只是从头开始启动应用程序?
我可以使用清单中的某些指令来实现此目的吗?请记住,我不希望它在暂停时返回应用程序时重新启动应用程序。仅在操作系统清除了应用程序数据时...
答案 0 :(得分:2)
关闭应用程序以释放内存时,Application
类中存储的状态将丢失。即使应用程序以某种方式关闭,您也可以保存将持续存在的信息。
一种是使用共享偏好:Making data persistent in android
另一种方法是使用Bundles
,这可能更符合您的需求:Saving Android Activity state using Save Instance State