Android游戏数据持久化:从数据库创建到视图模型集成
1. 数据库创建时添加数据
在创建数据库时,我们可以使用 RoomDatabase.Builder 类添加 Callback 实例。 Callback 类包含 onCreate 、 onOpen 和 onDestructiveMigration 三个函数,这些函数能让我们在不同时间点与数据库进行交互。
我们的目标是在数据库初始化时添加AI玩家。为此,我们需要重写 Callback 对象的 onCreate 方法,并将其添加到 Room.databaseBuilder 调用中。在 onCreate 方法里,我们会调用 PennyDropDao 的 insertPlayers 函数来插入AI玩家。不过,首先要将每个 AI 对象转换为 Player 对象,转换函数如下:
fun toPlayer() = Player(
playerName = name,
isHuman = false,
selectedAI = this
)
需要注意的是,所有数据库修改操作都必须在非UI线程执行,所以我们要
超级会员免费看
订阅专栏 解锁全文
2048

被折叠的 条评论
为什么被折叠?



