TestFlight предлагает беспроводную бета-версию приложений iOS (на не взломанных устройствах). Как это может быть сделано? Это функция iOS или уязвимость?
TestFlight предлагает беспроводную бета-версию приложений iOS (на не взломанных устройствах). Как это может быть сделано? Это функция iOS или уязвимость?
Ответы:
Это было возможно до того, как TestFlight развернул сервис. Техника вытекает из механизма распределения предприятия. Начиная с 4.0 устройства поддерживают установку из Интернета.
Помните - вам все еще нужно подписать бета-версию для выбранного набора идентификаторов UDID, которые вы просто не можете установить на любом устройстве. Все, что они делают, это забирают у IPA электронное письмо.
Видеть:
Обновление: я хочу сказать, что Test Flight - один из самых полезных инструментов, которые я использовал при разработке. Простое удаление электронной почты IPA из картины было преуменьшением - я просто пытался вызвать технический механизм. Они делают фантастическую работу, управляя всем бета-процессом. Получение новых устройств зарегистрировано. Уведомление пользователей и т. Д.
You still need to sign the beta distribution for a select set of UDIDs you can't just willy nilly install it on any device
, Для корпоративного профиля обеспечения распространения вам не нужно указывать устройства, и вы можете (хотя бы технически) установить двоичный файл на любое устройство. Тем не менее, лицензия ограничивает вас, чтобы установить его только внутри компании, для которой был выпущен профиль распространения.
В этой статье показано, как работает реализация OTA Apples, и ее можно использовать и за пределами предприятия: распространение беспроводных приложений ios
Полный процесс задокументирован Apple . Apple также опубликовала документацию и пример кода для регистрации устройств и получения UDID с помощью профилей, чтобы ваш веб-сайт мог определить, какое устройство вызывает.
Некоторые дополнительные решения с разными преимуществами:
iOS Beta Builder , Mac-приложение для создания веб-сайта с использованием сборки. Просто загрузите полученные файлы на ваш веб-сервер.
Diawi : простой веб-сервис. Загрузите файл IPA, при желании установите пароль и отправьте ссылку своим тестерам.
AppSendr : веб-сервис для хостинга бета-сборки, похожий на Testflight, но не включает процесс регистрации устройства. Но предоставляет утилиты развертывания для автоматической загрузки новых версий.
HockeyKit : проект с открытым исходным кодом для размещения бета-версий на вашем собственном сервере PHP5 с дополнительными функциями, такими как клиент для обновлений в приложении, автоматические веб-сайты для конкретных устройств и работа с несколькими приложениями. Полностью на основе файлов и каталогов.
HockeyApp : веб-сервис для хостинга бета- сборок, обновлений в приложениях, статистики, включая регистрацию устройств, приглашение и набор персонала. Также предоставляет сбор отчетов о сбоях на стороне сервера, символику (для всех потоков) и группирование сбоев для бета-версий и приложений магазина приложений (iOS + Mac). SDK с открытым исходным кодом, с использованием HockeyKit , QuincyKit и PLCrashReporter (единственное безопасное решение о том, как выполнить сбор отчетов о сбоях на iOS, см. В этой статье .
Примечание: я являюсь основным разработчиком HockeyKit и QuincyKit и одним из разработчиков HockeyApp .
Testflight в основном использует обычный Ad Hoc, как уже говорилось.
Чтобы это работало, вам нужно UDID
для каждого устройства, чтобы добавить его в профиль Ad Hoc, перекомпилировать приложение с новым профилем и распространить новую сборку.
Вы можете получить его UDID
с помощью запроса на аутентификацию OTA. Это фактически шаг, который выполняется в MDM до того, как фактический профиль будет развернут на устройство. По сути, он запрашивает у устройства дополнительную информацию о себе и отправляет его обратно на указанный пользователем сервер.
Первый шаг задокументирован здесь: настройка Apple OTA
Я полагаю, Testflight использует это сразу после процесса регистрации, чтобы получить имя UDID
, телефон, ...
Да, это основная функция iOS для корпоративных клиентов, которые хотят распространять OTA.
Предположительно, вы передадите свой UDID в TestFlight вместе с приложением, и они используют свою корпоративную лицензию для отправки вам приложения. Я уверен, что мне не хватает многих технических деталей, но если вы хотите узнать больше, у Apple есть видео об этом с WWDC 2010.
Войдите на developer.apple.com, перейдите на WWDC 2010 Videos и воспользуйтесь ссылкой, чтобы перейти к видео. Требуемое видео - «Сессия 108 - Управление мобильными устройствами». Он очень информативен о том, что возможно с OTA, и о шагах, которые вы должны предпринять для обеспечения OTA.
Стандартные устройства iOS «уязвимы» для запуска пользователем загрузки специальных приложений от любого разработчика, который имеет UDID этого устройства, и регистрирует этот UDID среди своих 100 разрешенных устройств на портале Apple для разработчиков.
OTA-дистрибутив - это всего лишь еще один способ установить бета-тестирование Ad Hoc от зарегистрированного разработчика.