数据库onUpgrade

时间:2011-12-10 13:19:41

标签: android sqlite

我对应用程序的升级过程有疑问,更具体地说,是升级或更改数据库。

考虑到我有testapp.apk的第1版。这个版本有数据库版本1,新版本的testapp.apk有数据库版本2.现在,如果我要升级我的testapp.apk,升级之前是否会调用旧版本的onUpgrade,或者只是调用新版本的onUpgrade?

2 个答案:

答案 0 :(得分:0)

它将运行新版本。升级应用程序时,它不会运行,只是将旧应用程序复制到旧应用程序上。然后当它运行时,它将只有onUpgrade()的新版本。

答案 1 :(得分:-1)

onUpgrade代码只会在最新安装的apk上调用。

首先安装新的testapp.apk。然后,当第一次访问数据库时,SQLiteOpenHelper将检查数据库的现有版本,并将其与您在testapp.apk中指定的新版本进行比较。

如果新版本大于旧版本,则会在新testapp.apk中的SQLiteOpenHelper上调用onUpgrade。

请在此处查看我对类似问题的回答,因为我认为这有助于解释其中的机制 的onCreate / onUpgrade / onDowngrade。

how do i create the database in my android app?