Привет! На связи Сергей Романков, я старший разработчик в СИБУР Диджитал.
Сегодня я хочу рассказать про интеграцию Airwatch от Vmware в мобильные устройства. Если вкратце – это платформа для удалённого управления корпоративной информацией на девайсах. С ней можно удалённо устанавливать приложения, сохранять корпоративные данные, подключать VPN без танцев с бубном, и тд.
В общем, удобно. Но есть один нюанс.
У Airwatch совершенно адовая документация на много страниц, в которой ничего не разобрать. При этом в интернете невозможно найти готовых ответов, а служба поддержки не отвечает неделями.
Если вы оказались один на один с Airwatch – шлю лучи поддержки! Чтобы вам было проще, я разберу его настройку на iOS с конкретными примерами (настройка на Android отличается довольно сильно, поэтому о ней я расскажу в другой статье). Итак, начинаем.
Дисклеймер
Об Airwatch ходит много мифов – мол, он даёт доступ ко всем данным с устройства, и третьи лица могут видеть ваши фото, шерстить переписки или дружно хихикать с истории браузера.
Это, конечно, не так. Доступ к данным пользователя определяет производитель ОС – то есть, Apple или Google. Для них сохранность персональных данных – очень чувствительная тема, и они стараются всячески ограничить доступ сторонних программ к личной инфе и файлам. В результате, у Airwatch есть доступ к:
Корпоративным программам, которые через него устанавливаются. К данным в этих программах доступ будет, а во всех остальных – нет;
Технической информации о статусе устройства. Допустим, закупила компания 10 000 смартфонов и раздала сотрудникам, а ведь нужно быть в курсе, что с каждым смартфоном вообще происходит. Включен он или выключен, сколько часов используется, и тд;
Конфигурациям VPN – чтобы максимально просто и бесшовно настраивать пользователю доступ к корпоративным ресурсам.
Этот дисклеймер можно показывать пользователям, которые будут скептически относиться к программе даже после успешной настройки.
Базовый пример настройки
Airwatch состоит из двух частей – серверной и продуктовой. Вторая состоит из мобильных приложений, которые используют функционал серверной части. Приведу пример настройки для мобильного приложения на iOS.
1. Чтобы проверить работу SDK, важно не забыть зарегистрировать устройство, потому что в противном случае SDK не подтянет данные с сервера (тому, как зарегать устройство, я посвящу отдельную статью, если нужно).
2. Заходим на github.
3. Переходим по ссылке и качаем архив (для этого нужно завести аккаунт).
4. Внутри мы видим SDKExampleApplication
и AWSDK.xcframework
.
5. Открываем проект SDKExampleApplication.xcodeproj
и переносим в проект AWSDK.xcframework
.
6. Меняем bundle ID приложения и собираем IPA.
7. Загружаем его во внутренний магазин и устанавливаем на телефон.
В первой вкладке вы увидите данные пользователя, которые SDK подтянул с сервера. Теперь перенесём их в наше приложение:
1. Переносим AWSDK.xcframework
в наш проект.
2. В AppDelegate создаем объект AWController
, и вызываем его в didFinishLaunchingWithOptions
.
let controller = AWController.clientInstance()
controller.callbackScheme = "examplesibur"
controller.delegate = self
controller.start()
Теперь при запуске приложения первый контроллер будет запускаться AWController
, а в момент его запуска будет инициализироваться SDK.
AWController
даже можно немного кастомизировать, — например, заменить основную иконку. Для этого нужно добавить ее в AWSDKDefaultSettings.plist
.
3. Также нужно запустить методы AWControllerDelegate
. В Delegate приходят данные со стороны SDK.
4. Теперь в info.plist
проекта нужно добавить массив LSApplicationQueriesSchemes
и следующие ключи:
wsonesdk;
awws1enroll;
AWSSOBroker2;
-
airwatch.
5. Готово, мы справились и настроили Airwatch SDK! Можем похлопать себя по плечу :)
P.S. Если у вас есть вопросы — пишите в комментах, с радостью на все отвечу!
AndreiMoscow
SAP Afaria не пробовали использовать или сравнивать с Airwatch?
RomankovSergey
Добрый день! Не пробовали если честно, если у вас есть опыт с SAP Afaria, и главное работа с ним на мобильных устройствах, будет интересно услышать.