在我的Android App中,我有一个静态类来共享整个应用程序中的一些变量和函数。
此类中的一些变量在其他活动中启动(例如,用户从网格视图中选择一些内容,然后我将其选择存储在此静态类中以便稍后在另一个活动中使用)
一切都很好,但看起来在应用程序的一段时间不活动之后(一旦它停留在后台),这个静态类被破坏,然后用默认值重新初始化,这是“错误的”,让我们说。
或者,可能是整个应用程序都被卸载了,在我回调它之后,它会恢复最后一个尝试访问某些变量的活动,但它们会被重新启动
有没有办法阻止类重新初始化或保留静态值或以其他方式保留这些值并在重新创建活动后恢复它们?...
非常感谢!
答案 0 :(得分:0)
我宁愿建议您将应用的状态存储在本地存储中,例如共享首选项或SQLite,而不是寻找方法(或者更确切地说是黑客)来停止重新初始化类或将变量存储在静态类中DB。
这样做的好处是你可以在应用程序的任何部分访问这些变量,其次你将摆脱那些静态类和变量,它们是内存泄漏和ANR的罪魁祸首。
答案 1 :(得分:0)
我认为sharedPreference是您的最佳选择。它有助于在本地存储您的数据。