Как работает TestFlight?

TestFlight предлагает бета-дистрибуцию приложений iOS в прямом эфире (на устройствах без взлома). Как это может быть сделано? Является ли это функцией iOS или уязвимостью?

Ответ 1

Это было возможно, прежде чем TestFlight выкатил сервис. Эта техника возникла из механизма распределения предприятия. Поскольку 4.0 устройства поддерживают установку из Интернета.

Помните - вам все равно нужно подписать бета-дистрибутив для выбранного набора UDID, вы не можете просто установить его на любом устройстве. Все, что они делают, - это удаление электронной почты из IPA.

См:

Обновление: я хочу сказать, что Flight Flight - один из самых полезных инструментов, которые я использовал при разработке. Простое удаление электронной почты с IPA из фотографии было преуменьшением - я просто пытался вызвать технический механизм. Они выполняют фантастическую работу по управлению всем бета-процессом. Получение новых устройств. Уведомление пользователей и т.д.

Ответ 2

В этой статье показано, как работает реализация Apples OTA и может использоваться и на других предприятиях: распределение беспроводных приложений ios

Полный процесс задокументирован Apple. Apple также опубликовала документацию и образец кода для регистрации устройств и получить UDID с помощью профилей, чтобы ваш сайт мог определить, какое устройство вызывается.

Некоторые дополнительные решения с различными сильными сторонами:

  • iOS Beta Builder, приложение Mac для создания сайта с помощью сборки. Просто загрузите полученные файлы на ваш веб-сервер.

  • Diawi: Простой веб-сервис. Загрузите свой файл IPA, опционально установите пароль и отправьте ссылку на ваши тестеры.

  • AppSendr: веб-сервис для хостинга бета-сборки, аналогичный Testflight, но не включает процесс регистрации устройства. Но предоставляет утилиты развертывания для автоматической загрузки новых версий.

  • HockeyKit: проект с открытым исходным кодом для размещения бета-версий на вашем собственном сервере PHP5 с дополнительными функциями, такими как клиент для In- App-Updates, автоматические веб-сайты, специфичные для устройств, и обработка нескольких приложений. Полностью основаны на файлах и каталогах.

  • HockeyApp: веб-сервис для хостинга бета-версии, обновления приложений, статистика и регистрация устройств, приглашение и вербовка. Также предоставляет сбор отчетов о сбоях на стороне сервера, символику (для всех потоков) и группировку сбоев для приложений для бета-приложений и приложений для приложений (iOS + Mac). SDK являются открытым исходным кодом, используя HockeyKit, QuincyKit и PLCrashReporter (это единственное безопасное решение о том, как сделать коллекцию отчетов об авариях на iOS, см. в этой статье.

Примечание. Я являюсь основным разработчиком HockeyKit и QuincyKit и один из разработчиков HockeyApp.

Ответ 3

Testflight в основном использует обычный Ad Hoc, как уже было сказано.

Для этого вам нужно UDID для каждого устройства, чтобы добавить его в профиль Ad Hoc, перекомпилируйте приложение с новым профилем, чтобы перераспределить новую сборку.

Вы можете получить UDID с помощью запроса аутентификации OTA. На самом деле это шаг, который выполняется в MDM до того, как фактический профиль выйдет на устройство. Он в основном просит устройство получить дополнительную информацию о себе и отправить его обратно на сам указанный сервер.

Первый шаг описан здесь: Конфигурация Apple OTA

Я думаю, что Testflight использует это право после процесса регистрации для сбора UDID, имени телефона,...

Ответ 4

Да, это основная функция iOS для корпоративных клиентов, которые хотят распространять OTA.

Предположительно, вы передадите свой UDID в TestFlight вместе с приложением, и они будут использовать свою корпоративную лицензию для отправки вам приложения. Я уверен, что мне не хватает технических деталей, но если вы хотите узнать больше, у Apple есть видеоролик об этом с WWDC 2010.

Войдите в developer.apple.com, перейдите в WWDC 2010 Videos и используйте ссылку, чтобы попасть в видо, Видео, которое вы хотите, это "Session 108 - Управление мобильными устройствами". Это очень информативно о том, что возможно с OTA и о шагах, которые необходимо предпринять для подготовки OTA.

Ответ 5

Устройства на складе iOS "уязвимы" для running пользователя, загружающего Ad Hoc-приложения от любого разработчика, у которого есть это UDID устройства, и регистрирует этот UDID среди их 100 разрешенных устройств на портале разработчиков Apple.

Распределение OTA - это еще один способ установить специальное бета-тестирование Ad Hoc у зарегистрированного разработчика.