gpt4 book ai didi

java - 保存/恢复 Android 应用程序实例状态的稳健且简单的方法

转载 作者:太空宇宙 更新时间:2023-11-03 13:39:05 25 4
gpt4 key购买 nike

<分区>

在 Android 中,您需要实现以下 Activity 方法,以便在操作系统决定销毁然后重新创建您的 Activity 时,您的应用程序可以恢复到之前的状态:

public void onSaveInstanceState(Bundle savedInstanceState)
public void onRestoreInstanceState(Bundle savedInstanceState)

我看到的实现这些方法的示例是在 Bundle 对象(即仅原始对象)上使用 put/getBoolean、put/getInt 等来保存应用程序状态。一开始,这似乎是一种非常容易出错的保存状态的方法,而且我看不出如何在不编写大量代码的情况下扩展到存储复杂对象。

我有哪些选项可以以稳健且易于实现的方式存储/恢复状态?

万一它很重要,我的应用程序(游戏)需要存储大约 50 个对象,每个对象可能存储 5 个浮点变量和一些存储对其他对象的引用。我不是特别想为我使用的每个类和子类(可能大约有 15 个)编写保存/恢复方法。如果我可以将所有与状态相关的对象都放在一个名为“state”的对象中,然后只需调用“state”上的保存/加载来处理所有事情,那将是理想的。

使用 Java 序列化是一种选择吗?我听说它很慢,但这是保存/恢复的问题吗?我可以将我的数据写入 SD 卡吗?到数据库?

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