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

ВАЖНО: пожалуйста, сообщите нам о вашем вопросе через форму обратной связи сайта Headwind MDM! Иначе мы можем не заметить его...

0 голосов

Не могу разобраться, как работает даунгрейд приложения.

У нас есть приложение для работников, и в разных группах нужно настроить разные версии: Бета, Альфа, Стабильная, Активная. При переходе из одной конфигурации в другую при не совпадении версии приложения, как Headwind MDM себя поведет при обновлении и даунгрейде?

Апгрейд приложения проходит успешно. Однако даунгрейд иногда проходит, иногда не проходит. Например:

Обновил через MDM версию с 4.51.822 до 4.216.968 - Успешно

Даунгрейд версии через MDM с 4.216.968 до 4.215.803 - Конфигурацию обновляю качает но в приложении указана версия 4.216.968

Удалил версию через MDM 4.216.968 - Успешно

Установил версию через MDM 4.215.803 - Установилась но версию все равно показывает 4.216.968.

Удалил через Настройки Android – Приложение, после синхро установилась версия 4.215.803. 

от

1 Ответ

0 голосов

Headwind MDM управляет версиями приложения по следующим правилам.

1. У каждой версии должно быть Название (например 4.215.803) и Номер (целое число). Название версии отображается в интерфейсе пользователя, а номер - не отображается. Однако фактически управление осуществляется по номеру версии. Про название и номер версии можно посмотреть в документации Android: https://developer.android.com/studio/publish/versioning

2. Разработчик приложения должен обеспечить соответствие Названия и Номера версии, а именно: 

2.1. Не должно быть версий с разными названиями и одинаковыми номерами, также как с одинаковыми названиями и разными номерами

2.2. Больший номер должен соответствовать "большему" названию, а меньший номер - "меньшему" названию

3. Headwind MDM выполнит обновление приложения на устройстве, если новая версия будет иметь больший номер, чем установленная на устройстве.

4. Если новая версия будет иметь другое название (например 4.216.968), чем установленная на устройстве, но тот же номер - обновление не пройдет, при этом в журнале не будет сообщения об ошибке. При этом, если удалить приложение с устройства - установится версия с Headwind MDM.

5. Если номер новой версии будет меньше, чем установленный на устройстве - то обновление не пройдет, при этом в журнале будет сообщение об ошибке (попытка даунгрейда).

Соответственно, чтобы даунгрейд прошел корректно, нужно пометить в конфигурации ВСЕ более высокие версии "к удалению". Как это сделать - смотрите в этой статье: https://qaru.h-mdm.com/375/ Действие "удалить - установить" производится "атомарно", т.е. многократных обновлений конфигурации не требуется.

Также нужно попросить разработчика приложения проверить, что все версии приложения соответствуют правилам. Частая ошибка - разработчики забывают увеличить номер версии.

Для определения номера версии можно использовать программу aapt:

# aapt dump badging program.apk | grep package

В принципе, можно пометить приложение как "удалять всегда" (добавить версию с номером 0 и действием "Удалить"). Такой подход в Production не рекомендуется (приложение будет удаляться и заново устанавливаться при каждом обновлении конфигурации), но для тестов подойдет.

от (10.3k баллов)
...