Android应用程序在后台应用程序时保存数据

时间:2013-12-12 09:01:35

标签: android background-process data-storage

目前我正在开发xmmp客户端,当应用程序处于前台时它工作得非常好。但是由于当app在后台时,我在Application类(复杂的ArrayList,字符串和布尔值作为公共静态)中保存了大量数据,因此每个字段都被垃圾收集。

所以我的问题是,当我从后台获取应用程序时,检索此数据的最佳方法是什么?这是一个很大的问题,因为到目前为止我在每个班级都使用这种公共静态,这会导致我的应用程序崩溃。问题在于,用户可以将app放在每个活动的后台,并且在Application类中重新填充数据似乎很难。也许还有另一种方法可以保持数据的全局访问权限,不会在后台被删除?

提前致谢

2 个答案:

答案 0 :(得分:0)

如果问题是你的app在backgroud中被android破坏了,那么标准的方法是将数据保存在主活动的onDestroy()函数中,并在onCreate方法中检索这些数据再次打开(使用捆绑包)。

如果您希望数据在手机关闭时仍然存在,您可以考虑永久存储选项,如数据库。看看http://developer.android.com/guide/topics/data/data-storage.html

最后,如果您想要一种在后台运行的方法,您可以查看Service类。但是,如果要求您提供更多编码,以便能够在您的服务和活动之间进行通信

答案 1 :(得分:0)