база данных по обновлению - PullRequest
0 голосов
/ 10 декабря 2011

У меня есть вопрос, касающийся процедуры обновления приложения, в частности, обновления или изменения базы данных.

Учитывая, что у меня есть версия 1 testapp.apk. В этой версии есть БД версии 1, в новой версии testapp.apk есть БД версии 2. Теперь, если мне нужно будет обновить свой testapp.apk, будет ли вызываться onUpgrade со старой версии перед обновлением, или он просто вызовет onUpgrade новой версии?

Ответы [ 2 ]

0 голосов
/ 20 сентября 2014

Код onUpgrade будет вызываться только на последнем установленном APK.

Ваш новый testapp.apk будет установлен первым. Затем при первом обращении к базе данных SQLiteOpenHelper проверит существующую версию базы данных и сравнит ее с новой версией, указанной вами в testapp.apk.

Если новая версия больше, чем старая, onUpgrade будет вызываться для SQLiteOpenHelper в вашем новом testapp.apk.

Пожалуйста, смотрите мой ответ на подобный вопрос здесь, так как я думаю, что это поможет объяснить механику OnCreate / onUpgrade / onDowngrade.

как мне создать базу данных в моем приложении для Android?

0 голосов
/ 10 декабря 2011

Будет запущена новая версия. При обновлении приложения оно не запускается, оно просто копирует новое приложение поверх старого. Затем, когда он запустится, у него будет только новая версия onUpgrade ().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...