我开发了一个Android-App,我使用SQLiteOpenHelper将数据保存在SQLite数据库中。
我想知道我是否可以使用ActiveAndroid来更新我的应用,但是以某种方式保存先前存储在数据库中的用户数据。
这可能吗?
答案 0 :(得分:6)
在用户升级到最新版本的应用程序后,您必须在运行时执行数据迁移。该过程可以分解为以下步骤,我还为每个步骤分配了数据库版本值。
用户将所有数据存储在SQLite数据库中,尚未升级其应用程序。 [DB = SQlite v1]
升级时,当用户升级到下一版本时 app读取旧SQLite数据库中的所有数据并将其存储到 ActiveAndroid数据库。 [DB = SQLite v1和ActiveAndroid v1]
将所有数据迁移到新的ActiveAndroid数据库后,删除SQLite数据库的所有表,这样就不会占用您不需要的额外存储空间。 [DB = SQLite v2和ActiveAndroid v1]
在下一个版本中,您可以假设用户已完全迁移其数据,此时最终可以安全地删除之前引用SQLite数据库的所有代码。 [DB = ActiveAndroid v2]