У меня есть производственная версия приложения Google Play Store на моем телефоне и обновленная версия приложения в Android Studio. Я бы хотел протестировать процесс обновления , но столкнулся с проблемой управления версиями, а затем с проблемой ведения журнала.
Чтобы получить «чистую» установку, я могу зайти в настройки моего телефона Backup & reset > Automatic restore
, отключить его, затем удалить приложение и установить его из Play Store. Кроме того, я мог бы загрузить производственный APK и установить его из командной строки adb
(подробности ниже). В результате мое устройство должно быть таким же, как обычный пользователь.
Непосредственно к вопросу, но для понимания моей мотивации наблюдать за процессом обновления является то, что приложение имеет базу данных SQLite, и я расширяю SQLiteOpenHelper
, поэтому вызывается onUpgrade()
, и выполняется некоторая работа со схемой базы данных. ,
Обновление несовместимо
Если я нажму кнопку, чтобы развернуть приложение, затем выберите подключенное устройство, которое необходимо удалить, прежде чем продолжить:
Установка не удалась с сообщением Не удалось завершить сеанс: INSTALL_FAILED_UPDATE_INCOMPATIBLE
Очевидно, я могу удалить, но , который не будет тестировать процесс обновления!
Создание подписанного APK
Я создал «релиз» APK, используя Generate Signed APK...
, который является тем же процессом, который я использую при создании релиза для загрузки в Play Store. Это позволяет обойти проблему управления версиями, но вызывает проблему видимости журнала. Конфигурация релиза использовалась в прошлом и теперь выглядит следующим образом:
Установка APK на устройство из командной строки
«C: \ Program Files (x86) \ HTC \ HTC Sync Manager \ HTC Sync \ adb» install -r app-release.apk
Приведенное выше обновило без удаления. Процесс, который я использовал, состоял в том, чтобы открыть Terminal
в Android Studio, сменить каталог на тот, где хранился сгенерированный APK, затем введите команду выше.
Проблемы с ведением журнала / отладкой
Командная строка adb запустила процесс обновления, но не сразу заполнила окно Logcat отладочной информацией. Я мог подключиться к Logcat для всех процессов, но не смог получить отладочную информацию только для своего процесса и не имел доступа к инструментам отладки.
Вопрос
Как запустить устройство с подписанным рабочим выпуском, а затем запустить обновленную версию, содержащуюся в Android Studio, без деинсталляции и с возможностью просмотра результатов отладки в процессе обновления? Или как я могу изменить подписанный производственный выпуск так, чтобы он позволял обновлять новую версию и разрешать отладку?