【问题标题】:Can I control the installation of an android app database from Google Play Store?我可以从 Google Play 商店控制 Android 应用程序数据库的安装吗?
【发布时间】:2019-09-13 05:26:06
【问题描述】:

我有一个包含数据库的应用程序。
1) 在加载应用升级版本之前,我需要从当前版本中保存一些表格。
2) 我想将它们保存为 csv 文件。
3) 然后在应用程序加载和数据库加载后,将这些 csv 文件读入新数据库
4) 然后用新数据库中的数据修改表。

我可以通过在新版本启动后运行一些代码来完成 3) 和 4)。
我可以将表格保存为 csv,但我可以在安装开始时在加载新数据库之前放置 1) 和 2) 吗?
谢谢。

【问题讨论】:

    标签: android installation


    【解决方案1】:

    当然可以,但我需要问一下为什么要保存到 csv?从应用商店安装更新不会删除本地安装的数据库。您可以在SQLiteOpenHelper 实现中指明数据库版本是新的,然后在 onUpgrade 挂钩中运行任何 SQL 或其他任务来“迁移”(升级)数据库。

    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
      if(oldVersion <= 29 && newVersion >= 30) {
        db.execSQL("ALTER TABLE mytable ADD phone_number;");
      }
      ...
    }
    

    【讨论】:

    • 感谢您的快速回复和SQLiteOpenHelper public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { 我在我的数据库中找到了您所说的内容。它坐在那里被评论出来等着我。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-12-16
    • 1970-01-01
    • 2019-03-19
    • 2014-10-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多