到目前为止,我一直在我的应用程序中使用未加密的数据库,现在我想使用 SQLCipher 将我的数据库迁移到加密数据库。这是我的情况。
对于下一个版本,我将更新数据库版本并执行脚本。要调用 onUpgrade(),我必须调用 geReadableDatabase() 或 getWriteableDatabase()。因此,当我调用任何 operation() 时,它将执行我的脚本并执行以下操作。
创建和加密数据库。
将数据从旧(未加密)数据库导出到加密数据库。
删除旧数据库。
因此,当我执行迁移时,我希望暂停所有其他操作,直到迁移完成,然后将在加密数据库上执行暂停的操作。
不太确定如何实现这一目标,所以我应该使用什么方法来实现这一目标。