App Store — не единственный способ установки приложений для iOS. Раньше люди специально делали джейлбрейк, чтобы установить каталог Cydia. Но в последнее время появилось несколько сторонних каталогов, которые работают вообще без джейлбрейка. Удивительно, но Apple пока не ставит им палки в колёса.
Эти каталоги приносят реальную пользу, ведь здесь независимые разработчики свободно распространяют свои программы без комиссий и цензуры. Apple не может произвольно отзывать со смартфонов такие приложения. А люди получают более широкий выбор программ, включая эмуляторы Linux, независимость от производителя и реальное право владения.
Мини-приложения на HTML5
Кроме альтернативных каталогов, «бегство из тюрьмы» Apple идёт и другим путём — через платформы внутри других приложений. Например, такие платформы создаются на базе популярных мессенджеров, которые хотят запустить свои внутренние каталоги мини-приложений и свои платёжные системы.
Типичный пример — каталог китайского технологического гиганта Tencent внутри мессенджера WeChat. Это отдельная платформа с мини-приложениями на HTML5 размером меньше 10 мегабайт. То есть неважно, у вас Android, iOS или другая операционная система. Всё равно мини-программы WeChat можно скачать и запустить стандартным способом в едином интерфейсе. По сути, это полноценная платформа, открытая для независимых разработчиков — в каком-то смысле конкурент Google Play и App Store.
Мини-приложения WeChat
Tencent договорилась с Apple, что будет принимать в свой каталог только мини-приложения, соответствующие правилам App Store. Это один из вариантов, как разработчики получают доступ к пользователям iOS в обход Apple.
Сама Apple тоже видит потенциал мини-приложений. В последней версии iOS 14 она представила App Clips — фрагменты приложений, которые запускаются на телефоне без установки полной версии программы.
Альтернативные каталоги
Каталог AltStore запустился в 2019 году. В нём можно найти программы, которые Apple не допускает в App Store по разным причинам.
Как вообще работает AltStore? Дело в том, что Apple разрешает разработчикам для тестирования устанавливать на iOS свои приложения через Xcode для тестирования, а AltStore просто автоматизирует этот процесс и обновляет семидневные таймеры Apple на работу приложений, установленных в обход App Store. То есть каждое приложение пользователь устанавливает как программу якобы личной разработки.
Чтобы загрузить программы из каталога, нужно сначала установить AltServer под macOS 10.14.4+ или Windows 10+. На компьютере должен стоять iTunes, где надо включить синхронизацию со смартфоном по WiFi.
Cинхронизация по WiFi
Затем подключить устройство — и установить туда клиент AltStore через десктопный сервер.
Для работы придётся ввести Apple ID и пароль. Можно зарегистрировать отдельный Apple ID для этих целей.
Чтобы AltStore заработал, требуется установить доверие к новому Apple ID в настройках iOS. После этого можно залогиниться в приложение на смартфоне под тем же Apple ID, что и на десктопе — клиент и сервер работают в связке, словно вы тестируете на смартфоне приложения своей разработки, как программист. То есть установить приложения на смартфон можно только при подключении смартфона к десктопу. Кроме того, у каждого приложения установлен счётчик на 7 дней, а AltStore постоянно обновляет его (тоже требуется соединение с сервером). По этой причине желательно запускать сервер при каждой загрузке ОС на десктопе.
Внутри мобильного AltStore доступен список приложений для установки. Другой вариант — отправлять их с десктопа.
Кстати, можно зайти на unc0ver.dev, скачать и спокойно установить приложение Unc0ver для джейлбрейка, если есть такое желание. Это самый простой способ поставить каталог Cydia с десятками программ, которых нет в App Store.
Каталог Cydia
Но это не особо требуется, потому что без всякого джейлбрейка через AltStore на iOS ставится любое приложение в формате *.ipa. Несколько полезных приложений собрано в каталоге AppMarket. Просто скачиваем zip-архив, извлекаем .ipa — и устанавливаем через AltStore.
Одно из интересных приложений iOS — UTM для запуска виртуальных машин. По понятным причинам это и подобные приложения запрещены в App Store. Но это очень крутой инструмент, который эмулирует любой процессор и запускает любую операционную систему. Без проблем на планшете запускается Debian Linux или Windows 7.
Процессор в последних iPad Pro мощнее, чем во многих современных ноутбуках, так что эта идея не лишена смысла.
UTM ставится через AltStore без джейлбрейка, как и сотни других свободных программ, не проходящих цензуру «яблочной компании».
Ещё одно полезное приложение в AltStore (и запрещённое в App Store) — это DolphiniOS, популярный кросс-платформенный эмулятор для запуска любых игр GameCube или Wii с продвинутыми опциями типа повышения разрешения до 1080p и больше (для игры на Apple TV). Как известно, в App Store запрещены любые эмуляторы и консольные приложения (и многое другое).
Также запрещён iSH — полноценный шелл, через который запускаются реальные приложения Linux в нативной консоли.
Консоль iSH — одна из многочисленных программ, запрещённых в App Store
Автор AltStore — американский программист Райли Тестут (Riley Testut). Вообще, это приложение появилось в каком-то смысле случайно. Сначала Райли разработал эмулятор Delta для запуска на iOS классических видеоигр Game Boy Advance, Nintendo 64 и Nintendo DS.
Эмулятор Delta
Цензура App Store не пропустила его приложение в официальный каталог — и тогда Райли нашёл способ обойти этот запрет через AltStore. К удивлению многих, Apple не предприняла никаких действий против этого хака.
Airport — ещё один альтернативный каталог, куда принимают независимые программы (форма заявки). Он работает через сервис Apple TestFlight, который предназначен для бета-тестирования программ на широкой аудитории до их официальной публикации.
Каталог Airport
По условиям Apple TestFlight, количество бета-тестеров приложения не может превышать 10 000 человек. Вряд ли Airport представляет конкуренцию App Store в нынешнем виде, но это всё равно важный эксперимент. Он даёт разработчикам ещё один способ выйти на аудиторию iOS в обход корпорации Apple, которая контролирует все подступы, считая пользователей как бы своей «собственностью». В июне 2021 года компания опубликовала программный документ "Building a Trusted Ecosystem for Millions of Apps", в котором объясняет запрет на свободную установку программ из сторонних источников (sideloading) заботой о пользователях. Сомнительно, что такое объяснение убедит европейскую антимонопольную комиссию ЕС.
Год назад Apple забанила Fortnite за нарушение правил каталога. В ответ Epic Games подала в суд, обвинив Apple в злоупотреблении монопольным положением (речь о завышенной комиссии 30%). Этот пример показывает, что некоторые разработчики недовольны текущими условиями App Store. Но Apple может ответить: не нравится — не пользуйтесь. Распространяйте свои приложения через альтернативные каталоги, ведь такие действительно существуют.
Если суд примет эти аргументы Apple, то компанию могут заставить поддерживать альтернативные каталоги на своей платформе, как в своё время Microsoft запретили навязывать пользователям свой браузер Internet Explorer, во избежание злоупотребления монопольным положением. Так что судьба альтернативных каталогов во многом зависит от исхода судебного процесса Epic Games v. Apple.
Интересно, что та же Cydia позволяла устанавливать приложения на iPhone ещё до появления App Store в 2008 году. Сейчас она присоединилась к иску против Apple, обвиняя её в злоупотреблении монопольным положением в части запрета свободной установки программ на смартфоны пользователей. Разбирательства по этому вопросу идут также в Европе.
Альтернативные каталоги — это реальный способ распространять свои приложения в экосистеме Apple в обход App Store. Файлы приложений iOS уже сейчас можно спокойно выкладывать на любом хостинге, любом сайте. Возможно, антимонопольные разбирательства против Apple в Европе и США окончательно узаконят такую практику.