gpt4 book ai didi

android - 使用 Android Application 类来持久化数据

转载 作者:IT老高 更新时间:2023-10-28 13:02:34 28 4
gpt4 key购买 nike

我正在开发一个相当复杂的 Android 应用程序,它需要有关该应用程序的大量数据(我会说总共大约 500KB ——对于移动设备来说这么大吗?)。据我所知,应用程序中的任何方向变化(更准确地说是在 Activity 中)都会导致 Activity 的完全破坏和重新创建。根据我的发现,Application 类没有相同的生命周期(即,出于所有 Intent 和目的,它总是被实例化)。将状态信息存储在应用程序类中然后从 Activity 引用它是否有意义,或者由于移动设备上的内存限制,这通常不是“可接受的”方法?我非常感谢有关此主题的任何建议。谢谢!

最佳答案

我认为 500kb 不会有什么大不了的。

您所描述的正是我如何解决在 Activity 中丢失数据的问题。我在 Application 类中创建了一个全局单例,并且能够从我使用的 Activity 中访问它。

如果要经常使用,您可以在 Global Singleton 中传递数据。

public class YourApplication extends Application 
{
public SomeDataClass data = new SomeDataClass();
}

然后在任何 Activity 中调用它:

YourApplication appState = ((YourApplication)this.getApplication());
appState.data.UseAGetterOrSetterHere(); // Do whatever you need to with the data here.

我讨论它here in my blog post ,在“全局单例”部分下。

关于android - 使用 Android Application 类来持久化数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4208886/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com