- Все данные сохраняются (файлы, настройки, базы данных).Базы данных являются особыми, так как вы можете указать версию базы данных, и если она обнаружит измененную версию, она позвонит вам
onUpgrade()
.Для всех остальных вы отвечаете за обновление их до новой версии, если это необходимо. - Как я уже говорил в 1, Android сохраняет все.Вы должны обрабатывать любые изменения в способе хранения ваших данных.
- Используйте
adb install -r /path/to/newApk.apk
(обратите внимание на флаг -r
, который указывает adb на r einstall).По сути, рабочий процесс должен быть следующим:
.
adb uninstall my.package
adb install /path/to/old.apk
# play with app, set preferences, databases, etc.
adb install -r /path/to/new.apk
# watch your app crash in an impressive ball of fire
# fix stuff
# goto 0
Другие примечания: Да, приложение выполняет clean удаление вашего приложения перед установкой новой версии.Однако, как я уже сказал, данные вашего приложения не удаляются.Тем не менее, вы должны быть осторожны, потому что это удаление вызывает несколько вещей:
- Любые процессы, связанные с вашим приложением, уничтожаются (поэтому, если ваше приложение работает - любые действия, службы, все, что угодно, всекомпоненты будут уничтожены).
- Все, что связано с вашим приложением, удаляется из системы, например уведомления, отправляемые с помощью
NotificationManager
, сигналы тревоги, установленные с помощью AlarmManager
и т. д. Я не уверен, что происходит слюбые ваши виджеты (никогда не работали с виджетами).