每次增量都会调用 onUpgrade 吗?

Will onUpgrade be called for each increment?

假设我的应用程序数据库版本 1 运行 在某些用户设备上有一段时间了。

同时我将数据库版本增加到 2,然后增加到 3 并像那样处理 onUpgrade :

if (oldVersion == 1 && newVersion == 2) {
                db.execSQL(String.format("ALTER TABLE ... ADD .. text", ));

            } else if (oldVersion == 2 && newVersion == 3) {
                 db.execSQL(String.format("ALTER TABLE ... ADD .. text", ));
            }

当那个用户升级我的应用程序时,这两个块都会被执行吗?

我猜你可以使用:

if (oldVersion == 1) {
  do stuff;
  oldVersion = oldVersion + 1;
}

if (oldVersion == 2) {
  do stuff;
  oldVersion = oldVersion + 1;
}

或使用开关。