Что происходит с моим Android-приложением и базой данных, когда пользователь выполняет обновление через Market Place?

Хорошо, сейчас у меня есть приложение на MarketPlace, и сегодня я выпускаю его первое обновление. Будет ли база данных SQLite, используемая моим приложением, перезаписана обновлением, что вызовет повторный вызов onCreate? Или он просто не будет трогать базу данных? Что происходит с SharedPreferences?

Извините за, казалось бы, простые вопросы, я гуглил уже час и ничего не нашел о том, что происходит с пакетом, когда пользователь обновляет приложение. Он полностью стирается и устанавливается заново? Не знаю. Любая помощь будет высоко оценена. Спасибо!


person julio_a_jimenez    schedule 28.11.2010    source источник


Ответы (1)


если вы используете sqlite внутри вашего адаптера базы данных, он проверит эту переменную:

закрытый статический окончательный int DATABASE_VERSION;

Если он отличается от установленного на устройстве пользователя, он попытается вызвать переопределенный метод onUpgrade() sqlite.

person Andreas Wong    schedule 28.11.2010
comment
Хм, имеет смысл. Я надеялся, что мне не придется возиться с onUpgrade. Думаю, я могу удалить существующую таблицу и воссоздать ее. Еще вопрос, файлы в папке с активами полностью заменены? Большое спасибо за ваш ответ. - person julio_a_jimenez; 28.11.2010
comment
Вы можете просто вызвать onCreate() при обновлении после удаления всех таблиц. Я думаю, что он либо полностью заменен, либо синхронизирован. - person Andreas Wong; 28.11.2010
comment
Отлично, еще раз спасибо за вашу помощь, теперь позвольте мне превратить мою версию 1.1 в версию 1.1.1 :-) - person julio_a_jimenez; 28.11.2010