В этой заметке разберём, как устанавливать и удалять Android—приложения через центральную консоль Headwind MDM, развёрнутую на Ubuntu 22.04 LTS Server. Рассмотрим загрузку APK-файлов, выбор приложений с учётом архитектуры CPU устройства, а также привязку приложений к конфигурациям для автоматической установки или удаления на управляемых Android-устройствах.
В качестве примера используем Headwind MDM 6.39 и панель управления версии 5.41.1. Отдельно поговорим о нюансах подбора совместимых приложений и о том, почему стандартизация Android-устройств упрощает централизованное управление корпоративной инфраструктурой.
А вот если не получается стандартизировать, то получаем обратную сторону всего задуманного, нужно искать приложения (вести свой список) в интернете чтобы они устанавливались и работали.
Другое дело если Вы сами их пишите под свою инфраструктуру и устройства Android у Вас стандартизированы. Конечно это в идеале.
Если смотреть с нуля, то перед этой заметкой следует ознакомиться с ранее опубликованными:
"Единый центр управления Android устройствами на Ubuntu 22.04 LTS Server""Полный ресет Samsung Galaxy A6 через Android Recovery""Заводим Samsung Galaxy A6 на центральную консоль Headwind MDM через QR-код""Отправляем сообщения в пейджер с Headwind MDM на Samsung Galaxy A6"
На заметку: Видео всей заметки у меня на Youtube-канале.
На заметку: Видео всей заметки у меня на Rutube-канале.
Шаг №1: Итак, в качестве подопытного образа выступит смартфон Samsung Galaxy A6, нам нужно узнать какая архитектура процессора на нем используется, т.к. именно под нее нужно будет найти/написать самим приложение если такими навыками обладаете:
http://192.168.10.16 - admin&712mbddr@ - Устройства — находим устройство, у меня оно именуется, как A6 - Действия — переходим в "Детальная информация" и видим
Архитектура CPU: armeabi-v7a
почитав в интернете понял, что это 32-битная ARM-архитектура, в кратком виде упоминается, как arm-v7a.
Шаг №2: Далее нам понадобится на просторах интернета найти любой пакет под используемую архитектуру, к примеру, будет рассматривать на примере приложения "Cx File Explorer APK"
https://androidapks.com/cx-file-explorer/com-cxinventor-file-explorer/download/
скачиваю его на свою управляющую рабочую систему из-под которой я взаимодействую с другими, к примеру, это Windows 10 Pro, размещаю пока скачанное приложение в C:\Soft\APK

Шаг №3: Далее я задался вопросом, как проверить что APK файл под нужную мне архитектуру:
ответом на свой вопрос, вышел что мне нужна утилита aapt
https://github.com/VindroidH/prebuilt-binaries-aapt-aapt_64-aapt2-aapt2_64-windows-linux-macosx/blob/master/windows/aapt2_64.exe.zip
c:\Soft\aapt2_64.exe>aapt2_64.exe dump badging c:\Soft\APK\com.cxinventor.file.explorer-v2.8.1_281-Android_5.0.apk
вот только указывая | findstr /I "native", findstr /I skdVersion, findstr /I package не отображают архитектуру CPU, а все потому что (возможно) приложение не содержит нативного кода. Оно написано полностью на Java/Kotlin и является универсальным.
Если открыть приложение через архиватор 7z и не найдя папки lib, то можно сказать, что действительно приложение не зависит от архитектуры процессора.

Шаг №4: Теперь нужно загрузить на центральную консоль Headwind MDM скачанный APK пакет:
http://192.168.10.16 - admin&712mbddr@ — вкладка "Приложения" - Добавить, вижу окно

обращаю взор на "Файл" — и нажимаю "Выберите файл", запускается проводник и указываю на apk-файл
На заметку: при нажатии Файл - Выберите файл, файл должен быть с расширением ".apk" или ".xapk", этот нюанс был выявлен практическим способом, когда пытался подсунуть ему файл c расширением apkm (это контейнер).
который расположил в каталоге C:\soft\apk и получаю
Статус: Файл успешно загруженТип: ПриложениеID пакета: com.cxinventor.file.explorer - определяется из файлаВерсия: 2.8.1 - определяется из файлаНативный код: Нет (универсальный APK)

Нажимаю "Сохранить", появляется окно, как быть с приложением, т.е. делаю так:
Приложение: Cx File Explorer (2.8.1)Конфигурации: отмечаю галочкой - Установить - Управляемый Лаунчер

после нажимаю "Сохранить"
Добавленные приложения в отличии от считываемых с устройства системных отображаются во вкладке "Приложения"
для удобства "Показать системные" галочку не ставим

Шаг №5: Чтобы приложение на заведенном в Headwind MDM устройстве (к примеру, на Samsung Galaxy A6) к которому применена конфигурацию отобразилось на экране Лаунчера:
http://192.168.10.16 - admin&712mbddr@ - Конфигурации — перехожу в конфигурацию "Управляемый Лаунчер" — вкладка "Приложения" и
Название приложения: Cx File ExplorerВерсия: 2.8.1Действия: УстановитьЯрлык: Показывать

и нажимаю "Сохранить"
Шаг №6: Переключаюсь на смартфон Samsung Galaxy A6 и вижу, на экране запущенного Launcher появилась иконка "Cx Проводник"

Если опустить шторку сверху вниз значится уведомление
Платформа Android
Cx Проводник
Установлено администратором

в журналах для устройства "A6" Web-консоли Headwind MDM событие:
Downloading app: com.cxinventor.file.explorer
Silently installing app com.cxinventor.file.explorer 2.8.1
Отлично.
Шаг №7: Если нужно удалить приложение "Cx Проводник" с устройства A6 (Смартфон Samsung Galaxy A6), то с центральной консоли Headwind MDM:
http://192.168.10.16 - admin&712mbddr@ - Конфигурации - Управляемый Лаунчер — вкладка "Приложения" — в нужном приложении, к примеру "Cx File Explorer"
Действия: Не устанавливать

и нажимаю "Сохранить"
Шаг №8: Проверяю что происходит на смартфоне Samsung Galaxy A6:
с рабочего стола ярлык приложения "Cx Проводник" исчез, но приложение все еще установлено на смартфоне
На заметку: после того как смартфон завели в Headwind MDM в качестве главного экрана выступает не как по дефолту "Главный экран One UI", а "MDM Agent", поэтому установленные приложения все еще можно запустить с телефона не только те что назначены с единой консоли управления.
Шаг №9: Чтобы приложение удалить со смартфона его стоит отвязать от "Конфигурации":
http://192.168.10.16 - admin&712mbddr@ - Приложения — выбираем приложение "Cx File Explorer (2.8.1)" открываем через "Действия" на редактирование приложения "Cx File Explorer" — переходим во вкладку "Конфигурации"
Управляемый Лаунчер: удалить и отмечаю галочкой

и нажимаю "Сохранить", "Сохранить".
На заметку: Во вкладке "Приложения" где все приложения, приложение остается.
Шаг №10: Опустив шторку (сверху вниз) на смартфоне вижу уведомление, что приложение "Cx Проводник" удалено администратором:
Платформа Android
Cx Проводник
Удалено администратором

в журналах для устройствa A6 (Samsung Galaxy A6) Web-консоли Headwind MDM событие:
Removing app: com.hmdm.emuilauncherrestarter
Silently uninstall app com.cxinventor.file.explorer
Шаг №11: Когда приложение отвязано от конфигурации (у него выбран тип "Не устанавливать"), то у него становится доступным/активным "Действие" - "Удалить"
http://192.168.10.16 - admin&712mbddr@ — вкладка "Приложения" —

Ну и как Вам такое управление, уже что-то, по мере своего знакомства и разбора становится понятно, как это интересно и возможно задумываешься, а почему бы не попробовать самим написать приложение.
И тут мы плавно подходим к задумке своего окружения приложений под свои задачи.
Вот пока на этом я свою заметку завершаю, что хотел то и показал, а заодно расписал себе в шагах на случай если вдруг придется много после вернуться и вспомнить что да как. С уважением, автор блога ekzorchik.