Я хочу поддерживать несколько версий приложения, чтобы у администратора EMM был элемент управления, с помощью которого он мог бы молча передавать разные версии на разные устройства с помощью API управления Android.
Google play не позволяет поддерживать несколько версий приложения.
Это зависит от того, что вы имеете в виду и что вы хотите для разных версий. Есть куча важных вопросов:
Если ответ на оба вышеперечисленных вопроса положительный, вам нужно будет использовать разные имена пакетов для версий. Если ответ отрицательный, Google Play позволяет вам иметь разные версии с использованием тестовых каналов.
Но в целом вы правы. Google Play требует, чтобы все пользователи приложения получили последнюю версию.
Вы можете либо использовать модели закрытого тестирования, если вам нужны конкретные 5-6 пользователей, либо использовать поэтапные развертывания support.google.com/googleplay/android-developer/answer/6346149, если вам нужен процент. Android (ОС) не позволяет уменьшить код версии приложения. Итак, чтобы выполнить откат, просто перестройте старую версию с более высоким кодом версии и используйте ее для отката.
У меня есть сценарий, в котором мы должны развернуть приложение на 1000 устройств, но перед этим мы развернем пилотную сборку на 5-6 пользователей, и если все пойдет хорошо, мы развернем ее на все устройства. Но если что-то пойдет не так, мы откатим пилотного пользователя на старую версию. Я бы не предпочел изменить пакет, так как это привело бы к изменению многих настроек конфигурации, так что есть ли другой способ добиться этого?