Airport — маркетплейс для приложений в TestFlight
У пользователей iOS сейчас непростые времена: App Store теряет крупные приложения и блокирует успешные стартапы, многие компании обвиняют Apple в монополизме, а Epic Games вообще в открытую нарушает ToS. В этой ситуации всё больше разработчиков и юзеров начинает пользоваться TestFlight — официальной платформой Apple для тестирования приложений под iOS.
TestFlight стал хабом для приложений, которым нет места в основном магазине. Например, Джордан Сингер из Square разработал несколько приложений серии lil apps, каждое из которых выполняло свою маленькую задачу, будь то калькулятор, список дел или прогноз погоды. Apple не пропустила ни одно из таких приложений, сославшись на их «недостаточный для публикации в App Store функционал», хотя минимализм и был их основной фишкой. Приложение Clubhouse, ставшее хитом в Долине, ещё даже не вышло в основной магазин — разработчики хотят наращивать аудиторию и вводить фичи постепенно, опасаясь проблем от врывного успеха после публикации в App Store.
TestFlight работает так: разработчик отправляет приложение на проверку, которая происходит гораздо менее тщательно, чем при релизе в магазин. Причем как правило проверяется только первая загруженная версия, если приложение хоть как-то работает и хоть что-то из себя представляет (хотя бы одну кнопку), его пропускают. Следующие версии обычно не проверяют. Приложение можно скачать по ссылке-приглашению, во внутреннем тестировании могут принять участие до 100 человек, в общем тестировании — до 10000. Для большинства инди-разработчиков этого более чем достаточно, и они совершенно не торопятся терпеть неудобства от публикации в App Store.
Airport и Departure
Томас Уэйт из BitSuites запустил сайт Departures, на котором собирает все найденые инвайты TestFlight и где любой желающий может принять участие в тестировании приложений даже самых крупных компаний вроде Microsoft. Так как Departures привлекает довольно много внимания, его также используют небольшие разработчики для раскрутки своего приложения среди лояльной и сплочённой аудитории.
Уже упомянутый Джордан Сингер пошёл ещё дальше, и разработал удобное и функциональное приложение Airport, в котором можно изучить самый крупный каталог приложений TestFlight и скачать любое из них. Сам Airport ставится через основное приложение TF, а всё остальное доступно для установки уже в нём напрямую.
К десятому дню с момента запуска Airport в нём было:
Несмотря на то, что доступ к Airport можно было получить только по заявке, приложение стало очень популярно в Твиттере, быстро набрало свои максимальные 10 тысяч пользователей и оказалось на распутье: дальнейшую судьбу проекта Джордан ещё не раскрыл. Он может попытаться опубликовать Airport в App Store и надеяться, что Apple не воспримет его как конкурирующий с самим App Store маркет (а это не так, у них разные аудитории и продукты), а может пойти по пути AltStore и выбрать полулегальную установку с обновляющимися сертификатами. Всё зависит от позиции Apple, которую те ещё не озвучили. Если Airport выйдет из стадии эксперимента в общедоступный продукт, он может вскоре спутать карты Apple, которая всегда отчаянно боролась с альтернативными источниками получения приложений для iOS.
Джордан пообещал вскоре выпустить Airport для общего пользования тем или иным путём, так что без внимания проект не останется
На правах рекламы
Наша компания предлагает аренду VPS для совершенно любых проектов. Предлагаем широкий выбор тарифных планов, максимальная конфигурация позволит разместить практически любой проект — 128 ядер CPU, 512 ГБ RAM, 4000 ГБ NVMe!
Тестирование приложений IOS через TestFlight
В отличии от тестирования приложений для Android, где тестовое приложение представляет собой установочный файл, с IOS дела обстоят несколько сложнее. Подход централизованного тестирования является фактически единственным возможным методом для быстрой доставки приложения от разработчика до тестировщика (или заказчика).
Тестирование проводится при помощи приложения TestFlight, которое обеспечивает доставку и установку тестовых программ. Время тестовой версии с момента ее отгрузки составляет 60 дней, после чего ожидается загрузка обновленной версии. Если новая версия не отгружена, то тестирование прекращается.
Тестирование разделяется за внутреннее и внешнее. В обоих случаях, составляется список тестировщиков. В случае внешнего тестирования, приложение должно пройти дополнительную «beta»-проверку. Из практики, данная проверка проводится от 1 до 2-х дней. Внутренняя проверка рассчитана на сотрудников компании, которые доверяют разработчикам. Мы склонны применять именно внутреннее тестирование из-за его быстрой динамики.
Этап 1
Список адресов AppleID необходимо передать разработчикам (или организатору тестирования). Внимание! требуется только AppleID и желательно Фамилия и имя, пароль сообщать НЕ требуется. Если мы являемся Вашими разработчиками, то отправьте нам список через форму внизу статьи или на почту dev@ios-lab.ru
Этап 2
После регистрации Вашего AppleID, на почту Вам придет письмо примерно следующего содержания:
Перейдите по ссылке из письма. В открывшемся окне браузера, Вам необходимо согласиться с условиями и подтвердить намерения.
Этап 3
Для ускорения процесса, Вы можете сообщить разработчику о том, что все тестировщики уже подтвердил свое участие (через форму в конце статьи или на почту dev@ios-lab.ru)
Теперь Вам необходимо установить приложение TestFlight из AppStore.
Этап 4
После подтверждения, разработчик подключает Вас к конкретному тестируемому приложению, после чего Вы получаете следующее письмо
Перейдите по приглашению из письма и Вы установите целевое приложение. С этого момента Вы можете начинать тестирование.
Обновление
Если разработчик выкатил новый релиз, то Вам потребуется выполнить обновление через TestFlight практически так же, как и любое другое обновление в AppStore.
По истечении срока тестирования, приложение останется работать на Вашем устройстве. Удалить его можно точно так же, как и любое другое.
Не допускайте наличия тестовой и релизной версии приложений на Ваших устройствах. Перед скачиванием релиза, рекомендуется удалить тестовую.
Отзыв о тестовой версии
Вы можете оставить отзыв или сообщить об обнаруженной уязвимости. Для этого Вам необходимо перейти в приложение TestFlight
Отзыв составляется в виде письма разработчикам, на указанный ими адрес для связи.
Testflight apps
Хотим вам посоветовать лучший вариант просмотра различных телепередач, программ или кинопремьер. Kino.pub — уникальный сервис, существующий за счёт энтузиазма его создателей и пользователей. Здесь вы сможете найти уйму фильмов на любой вкус в отличном качестве. К тому же всегда удобно зайти в одно приложение и найти там то, что пожелает ваша душа. Часто наши люди сталкиваются со сложностями в установке данного приложения на различные девайсы. По этой причине мы решили описать пошагово как настроить kino.pub на ваше устройство.
Установка для Apple TV 4/4K
Установка для Apple TV 2/3
Первым делом нужно сконфигурировать DNS:
Теперь необходимо установить профиль, чтобы заставить Apple TV доверять сертификату сайта:
Чтобы вам было легче разобраться в инструкции, мы сделали для вас видео-инструкцию по установке Kinopub на Apple TV ?
Для того, чтобы полностью оградить вас от проблем в использовании данного приложения, хотим порекомендовать парочку лайфхаков-советов:
Как перезапустить приложение?
Двойное нажатие по кнопке и смахнуть вверх приложение qinoa.
Не работает код активации
Код активации действителен в течении пяти минут. Для получения нового кода, нужно перезапустить приложение.
Не получил письмо
Проверяем внимательно папку входящие и спам. Если все же нет, ждем полчаса и потом обращаемся за помощью в Telegram-канал
Получил письмо, но удалил и почистил корзину, а потом осознал
Обращаемся за помощью в Telegram-канал.
В отличии от тестирования приложений для Android, где тестовое приложение представляет собой установочный файл, с IOS дела обстоят несколько сложнее. Подход централизованного тестирования является фактически единственным возможным методом для быстрой доставки приложения от разработчика до тестировщика (или заказчика).
Тестирование проводится при помощи приложения TestFlight, которое обеспечивает доставку и установку тестовых программ. Время тестовой версии с момента ее отгрузки составляет 60 дней, после чего ожидается загрузка обновленной версии. Если новая версия не отгружена, то тестирование прекращается.
Тестирование разделяется за внутреннее и внешнее. В обоих случаях, составляется список тестировщиков. В случае внешнего тестирования, приложение должно пройти дополнительную «beta»-проверку. Из практики, данная проверка проводится от 1 до 2-х дней. Внутренняя проверка рассчитана на сотрудников компании, которые доверяют разработчикам. Мы склонны применять именно внутреннее тестирование из-за его быстрой динамики.
У App Store, в отличие от Google Play, никогда не было альтернатив. Apple не только не приветствовала их появление, но и всячески этому препятствовала. В Купертино считали, что пользователи должны скачивать только безопасный софт, который соответствует установленным стандартам. Поэтому в компании был образован специальный отдел цензоров, которые проверяют приложения, попадающие в App Store, чтобы гарантировать своим клиентам высокое качество и отсутствие вредоносных скриптов. Правда, ушлые разработчики нашли, как выйти и из этой ситуации.
TestFlight давно превратился в единственный альтернативный магазин приложений для iOS
Читатели AppleInsider.ru рассказали, что думают об удалении Fortnite из App Store
TestFlight () – это тестовая платформа Apple для приложений, где разработчики могут размещать свои программы, чтобы протестировать их на узкой аудитории пользователей непосредственно перед публикацией в App Store. Но если раньше количество участников тестирования было ограничено на отметке в 100 человек, то со временем Apple подняла планку до 10 000. В результате TestFlight превратился в своего рода альтернативный каталог приложений с менее строгими требованиями, чем и воспользовались многие разработчики.
Зачем нужен TestFlight
TestFlight доступен в App Store и его могут скачать любые пользователи
Пользователи требуют у разработчиков расширения функциональных возможностей их приложений, но те зачастую не могут на это пойти из-за установленных ограничений. Но в TestFlight многие правила не действуют, потому что Apple делает для них скидку, учитывая, что это тестовые приложения, которые перед публикацией в App Store всё равно подгонят под установленные гайдлайны. Другое дело, что хитрые разработчики повадились размещать в TestFlight свой софт как в конечной точке – без намерений вывести его в App Store. Поэтому всё, что нужно пользователям, — это получить прямую ссылку на скачивание, и наслаждаться полулегальной программой на iOS.
В России признали App Store монополией. Ждём сторонние магазины приложений
Особенно разработчиков привлекает полное отсутствие комиссионного сбора. Несмотря на то что приложения в TestFlight могут включать в себя встроенные покупки, Apple не будет брать с них комиссию, хотя платежи и проходят через App Store. А ведь есть ещё и другие преимущества в виде возможности добавить в приложение ссылки на другие приложения и игры, не размещённые в официальном каталоге. Именно это, кстати, и сделала Microsoft, когда тестировала игровой сервис xCloud, который в итоге не допустили к публикации в App Store.
Аналог App Store
Да, принять участие в «тестировании» приложения из TestFlight могут одновременно не больше 10 000 человек, что может показаться откровенно маленькой цифрой. Всё-таки многие именитые студии рассчитывают на миллионные аудитории, ведь только в этом случае, по их мнению, программа или игра может оправдать затраты на разработку и продвижение. Однако в TestFlight, как правило, публикуются так называемые андеграундные разработчики, которые создают узконаправленное ПО, и 10 тысяч пользователей им обычно хватает.
В TestFlight не действуют те же требования, что и в App Store
Сейчас Apple проверяет приложения, которые публикуются в TestFlight, спустя рукава. Цензоры просто убеждаются в том, что программа рабочая и не содержит вредоносных скриптов, позволяя ей довольно просто попасть на площадку. При этом зачастую обновления, которые они выпускают для софта в TestFlight, проверке уже не подлежит. Во всяком случае, некоторые разработчики, которые рискнули проверить это и добавили в свои программы запрещённые функции, убедились, что за этим действием не последовало удаления.
Telegram потребовал у Еврокомиссии разрешить альтернативы App Store
Сейчас разработчики опасаются, что Apple начнёт жёстче контролировать TestFlight, потому что он уже обрёл невероятную популярность у тех, кто хочет обойти правила App Store. Несмотря на то что сама компания не считает TestFlight альтернативным магазином приложений, где должны действовать те же правила, что и в основном, взять его под контроль она может. Конечно, комиссию за транзакции в тестовых приложениях вряд ли введут, однако начать следить за функциональностью софта могут ещё как.
TestFlight существует уже много лет, как для решения повседневных проблем, так и для распространения iOS приложений для бета тестирования. Ранее в этом году, Apple выкупила Burstly, компанию, которая основала TestFlight. В течение этого года на WWDC, Apple показала нам, что значит это приобретение для iOS программистов. Будьте уверены, это хорошие новости.
TestFlight был интегрирован в iTunes Connect и сейчас доступен как «родное» приложения для девайсов с iOS 8. Если Вы планируете пользоваться платформой для бета распространения от Apple, тогда Вы быстро заметите некоторые произошедшие изменения. В этой статье, Вы изучите насколько легко начать использовать TestFlight.
1. TestFlight
Приобретение Apple TestFlight это не просто интеграция TestFlight в рабочий процесс разработки для iOS. Ряд ключевых аспектов для бета распространения изменились к лучшему.
Идентификаторы устройств и Provisioning Profiles
Для примера, нет больше необходимости изобретать велосипед с идентификаторами устройств и provisioning profiles. Для тестирования приложения с помощью TestFlight больше нет необходимости добавлять устройство в Ваш аккаунт разработчика и больше нет необходимости для генерирования provisioning profile для ad hoc распространения.
Внутренние тестировщики
Apple провела черту между внутренними тестировщиками и бета тестировщиками. Внутренние тестировщики являются членами Вашей команды разработчиков, у которых есть общий аккаунт в iTunes Connect. Внутренние тестировщики настраиваются в iTunes Connect, и Вы можете подключить до 25 людьми для одного приложения. Для того чтобы сделать текущую версию приложения доступной для внутренних тестировщиков достаточно просто переключить переключатель в iTunes Beta Testers
Бета тестировщики
Бета или внешние тестировщики может быть любой, кто имеет электронный адрес, на который iTunes Connect может выслать приглашение. Вы можете подключить до 1,000 бета тестировщиков на одно приложение. Подождите, дальше еще интереснее. Каждый бета тестировщик может иметь несколько устройств для тестирования, что является фантастической новостью для больших компаний, которые испытывают неприятности с лимитом в 100 устройств для одного аккаунта.
Бета рецензия приложения
Хотя есть и один подводный камень. Каждая версия приложения, которую вы загружаете для распространения бета тестровщикам, должна пройти через рецензию от Apple.К счастью это не является справедливым для внутренних татуировщиков. В тот момент, когда вы загружаете новую версию приложения в iTunes Connect, она моментально становиться доступной для каждого внутреннего тестировщика.
Аккаунт в песочнице
В момент, когда тестировщик открывает Ваше приложение, то моментально для него создается аккаунт в песочнице. Это означает, что больше нет необходимости в создании тестовых акаунтов в iTunes Connect. Тестирование In-App Purchases никогда не было настолько простым.
TestFlight для iOS
Apple также выпустила TestFlight как приложение для iOS, в котором тестировщики могут загружать, устанавливать и обновлять тестовые версии приложений. Это очень удобно для управления тестовыми версиями и для поддержания обратной связи с разработчиками приложения.
2. Первые шаги
Шаг 1: Настройки проекта
Давайте для начала создадим пробное приложение в Xcode 6. Откройте Xcode 6, создайте новый проект, основанный на шаблоне Single View Application в секции iOS > Application.
Присвойте Вашему приложению имя и идентификатор организации и нажмите Next. Укажите Xcode, где бы вы хотели сохранить Ваш проект и нажмите кнопку Create.
Шаг 2: ID приложения
Перейдите на Apple iOS Dev Center и создайте App ID для приложения. Для того чтобы пользоваться TestFlight, мы должны создать приложение в iTunes Connect и вот для чего и нужен App ID.
Я отметил App ID suffix как explicit App ID, но все должно работать и с wildcard App ID.
Как я упоминал ранее, реализация TestFlight от Apple имеет много преимуществ. Вам больше нет необходимости в создании provisioning profile для ad hoc распространения, что в свою очередь влечет за собой то, что Вам более нет необходимости точно определять какие устройства будут разрешены для бета тестирования. Мы увидим как это работает через минуту.
Шаг 3: iTunes Connect
Войдите в iTunes Connect и создайте новое приложение. Укажите правильный App ID из выпадающего списка и установите номер версии 1.0. Если Вы не увидели нужный App ID в выпадающем списке, тогда подождите пять минут и попробуйте снова. Это может занят несколько минут, прежде чем изменения, которые Вы сделали в iOS Dev Center, синхронизируются в iTunes Connect.
К счастью, больше нет необходимости заполнять приложение всей необходимой информацией. Нажмите на вторую вкладку, Prerelease, чтобы увидеть список доступных для тестирования версий Вашего приложения. Сейчас список пуст. Давайте подготовим наше приложение для тестирования, чтобы исправить эту оплошность.
3. Загрузка тестовой версии приложения
Загрузить тестовую версию приложения очень просто используя Xcode 6. Откройте Ваш проект через Xcode, перейдите в target’s build settings и убедитесь в том, что Code Signing Identity для release builds установлены в позицию iOS Developer для Any iOS SDK. Provisioning Profile для release builds должен быть установлен в позицию Automatic. Это настройки по умолчанию, когда создаться проект в Xcode 6.
Перед тем как мы создадим архив для отправки в iTunes Connect, мы должны добавить обязательные иконки нашего приложения. Если мы этого не сделаем, то Xcode скомпилирует приложение и откажет в отправке тестовой версии в iTunes Connect.
Схема по умолчанию для создания архива нашего с настройками для релиза проекта именно то, что мы хотим. Подсоедините тестовое устройство с iOS 8 к вашему рабочему компьютеру и выберите Archive из меню Xcode Product для того чтобы создать архив.
Если не возникнут никаких ошибок, Xcode автоматически откроет Organizer, и покажет Вам результат своей работы в виде архива. Выберите его из списка и нажмите Submit справа верху.
Когда вы пытаетесь отправить тестовую версию в iTunes Connect, Xcode может показать предупреждение, такое как на рисунке ниже. Оно говорит о том, что Xcode не может найти соответствующий provisioning profile, который отображает конфигурацию Вашего приложения. К счастью мы видим кнопку Try Again в правом нижнем углу. Нажмите на нее для решения данной ошибки.
Убедитесь в том что флажок в низу диалогового окна установлен для того чтобы обеспечить автоматическую регистрацию crash log в iTunes Connect. Это подобно тому, как работает Crashlytics works.
Когда Вы нажали Submit, Xcode начинает загрузку тестовой версии приложения в iTunes Connect. Во время этого процесса происходит большое количество валидаций, таких как проверка на то, что в тестовой версии приложения есть все необходимые размеры иконок.
Если Ваша тестовая версия приложения прошла все проверки, Xcode сообщит Вам о том, что тестовая версия приложения успешно загружена в iTunes Connect.
4. Build Details
Нажмите на вкладку TestFlight чтобы увидеть данные текущей версии. На этой странице Вы можете добавить информацию для Ваших тестировщиков и команды из Apple’s review team.
В первой секции показывается, когда время для данной версии тестового приложения закончится. Каждая тестовая версия приложения активна на протяжении 30 дней.
Во второй секции, Вы можете добавить информацию, которую увидеть тестировщик, когда установит тестовую версию приложения. Вы можете указать ему, что именно хотите тестировать, добавить описание для данной версии, и указать адрес Вашей электронной почты, на которую тестировщик сможет отправить письмо..
Третья секция показывает информацию для Apple’s review team. Каждая версия Вашего тестового приложения для внешнего тестирования должна проходить через Apple’s review.
5. Добавление тестировщиков
Для того чтобы включить TestFlight для вашего приложения, переключите переключатель TestFlight Beta Testing расположенный справа.
В то время как писалась данная статься, TestFlight был доступен только для внутреннего тестирования. Apple анонсировала что откроет TestFlight для внешних тестировщиков в ближайшую неделю или месяц. Если Вы нажмете вкладку Internal Testers, Вы увидите пустой список. Для того чтобы добавить тестировщика в данный список, Вы должны пометить члена команды как внутренний тестировщик. Давайте начнем с себя.
В iTunes Connect, перейдите в Users and Roles и выберите Ваш профиль. Чтобы отметить себя как внутренний тестировщик, переключите переключатель Internal Tester справа. Нажмите Save и перейдите назад к списку внутренних тестировщиков Вашего приложения.
Как Вы можете видеть, внутренние тестировщики должны быть приглашены как тестировщики отдельно для этого приложения. Выберете тестировщиков из списка, которых Вы хотите пригласить и нажмите Save. Тестировщики, которых Вы выбрали, должны получить письмо на их электронный адрес, в котором будет приглашение для тестирования приложения.
6. TestFlight для iOS
Загрузите приложение TestFlight от компании Apple с App Store на устройство, в котором установлена iOS 8. Проверьте Вашу электронную почту и откройте письмо-приглашение для TestFlight. Оно должно быть похожим как на рисунке ниже.
Нажав на кнопку Open in TestFlight, вы принимаете приглашение. После этого откроется приложение TestFlight и предоставит Вам возможность скачать и установить тестовую версию приложения, которую мы загрузили в iTunes Connect. Нажмите Installдля того чтобы установить приложение на Ваше устройство.
Приложение TestFlight показывает Вам весь список приложений, в которых Вы приглашены как тестировщик, что очень похоже на то, как работает веб версия TestFlight. Главная разница в том, что Apple’s TestFlight client является «родным» приложением, которое позволяет скачивать, обновлять и открывать приложения из приложения TestFlight.
Вы также будете оповещены о том, что данная версия приложения является тестовой с помощью оранжевой точки перед именем приложения на Вашем «домашнем» экране.
В заключении
Приобретение TestFlight компанией Apple это определенно шаг навстречу разработчикам под iOS. То, что я Вам показал в этой статье, является только первым шагом в направлении на интеграцию TestFlight в рабочий процесс разработки под iOS. Я уверен в том, что много новых возможностей откроется в ближайший месяц.