Разработка iOS-приложения закончена, тесты пройдены, заказчик доволен — но до пользователей ещё далеко. Между готовой сборкой и кнопкой «Загрузить» в App Store лежит отдельный этап, который часто недооценивают: подготовка аккаунта, оформление страницы приложения, бета-тестирование и модерация. На каждом шаге есть свои подводные камни, и неопытная команда может потерять на них недели.
В этой статье пройдём весь путь от сборки до релиза: что нужно подготовить заранее, как устроена проверка Apple, почему приложения отклоняют и как этого избежать.
Шаг 1. Аккаунт разработчика
Чтобы публиковать приложения, нужен платный аккаунт в программе Apple Developer Program. Он бывает двух типов:
- Индивидуальный. Регистрируется на физическое лицо. В магазине в качестве разработчика будет указано имя человека. Подходит для частных проектов, но не для бизнеса.
- Организация. Регистрируется на юридическое лицо. В магазине отображается название компании, можно добавлять сотрудников с разными ролями. Для регистрации нужен номер D-U-N-S — идентификатор организации в международном реестре.
Для бизнеса правильный вариант — аккаунт организации, оформленный на саму компанию, а не на подрядчика. Это принципиальный момент: если приложение опубликовано в аккаунте студии разработки, при смене подрядчика его придётся переносить, а это отдельная процедура со своими ограничениями.
Совет: регистрируйте аккаунт организации заранее, параллельно с разработкой. Получение D-U-N-S и проверка компании могут занять от нескольких дней до нескольких недель.
После регистрации владелец аккаунта приглашает разработчиков в App Store Connect и выдаёт им нужные роли: администратор, разработчик, маркетолог, финансы. Передавать подрядчику логин и пароль от основного аккаунта не нужно и небезопасно.
Шаг 2. Подготовка сборки
С технической стороны перед загрузкой нужно убедиться в нескольких вещах.
Идентификаторы и сертификаты
- Bundle ID — уникальный идентификатор приложения, например вида com.company.app. Он создаётся один раз и не меняется.
- Сертификаты подписи — подтверждают, что сборка выпущена вашей командой.
- Профили подготовки (provisioning profiles) — связывают приложение, сертификат и разрешённые возможности: push-уведомления, вход через Apple, работа с платежами и так далее.
Современные инструменты Xcode умеют управлять подписью автоматически, но в командах с несколькими разработчиками и CI-сборками лучше настроить этот процесс явно, чтобы не зависеть от одного компьютера.
Номер версии и сборки
У каждого релиза есть версия (то, что видит пользователь, например 1.2.0) и номер сборки (внутренний, должен увеличиваться при каждой загрузке). Повторно загрузить сборку с тем же номером нельзя.
Технические требования
- Сборка должна быть собрана актуальной версией Xcode и SDK — Apple периодически поднимает минимальные требования.
- Все используемые разрешения (камера, геолокация, микрофон, фото) должны сопровождаться понятным текстом, объясняющим, зачем они нужны.
- Приложение должно корректно работать на всех поддерживаемых размерах экранов, включая iPad, если вы не отключили поддержку планшетов явно.
- Должен быть заполнен манифест конфиденциальности, если используются API, требующие обоснования, или сторонние библиотеки, собирающие данные.
Шаг 3. Бета-тестирование через TestFlight
Перед публикацией сборку стоит прогнать через TestFlight — официальный инструмент Apple для бета-тестирования.
- Внутренние тестировщики — до сотни участников команды из App Store Connect. Получают сборку сразу после обработки, без проверки Apple.
- Внешние тестировщики — до нескольких тысяч человек по email или публичной ссылке. Первая сборка для внешнего тестирования проходит упрощённую проверку.
TestFlight полезен не только для поиска багов. Через него удобно показать приложение заказчику, фокус-группе или ключевым клиентам, собрать отзывы и проверить работу на реальных устройствах. Тестовые сборки работают ограниченное время, после чего нужно загрузить новую.
Шаг 4. Страница приложения в App Store Connect
Страница в магазине — это витрина, от которой зависит, скачают ли приложение. Её заполнение — отдельная работа, которую лучше начать заранее.
Что нужно подготовить:
- Название — до 30 символов. Должно быть уникальным в магазине.
- Подзаголовок — короткое пояснение до 30 символов, отображается под названием.
- Описание — подробный рассказ о функциях. Первые строки видны без раскрытия, поэтому главное — в начале.
- Ключевые слова — поле до 100 символов для поиска внутри магазина. Слова через запятую, без повторов из названия.
- Скриншоты — для обязательных размеров экранов iPhone и, если поддерживается, iPad. До десяти на каждый размер. Первые два-три — самые важные, их видно в результатах поиска.
- Превью-видео — необязательно, но повышает конверсию для сложных продуктов.
- Иконка — в высоком разрешении, без прозрачности.
- Категория — основная и дополнительная.
- Ссылка на политику конфиденциальности — обязательна для всех приложений.
- Ссылка на поддержку — страница, где пользователь может получить помощь.
- Возрастной рейтинг — заполняется через анкету о содержимом приложения.
- Сведения о конфиденциальности — какие данные собирает приложение, связываются ли они с личностью пользователя, используются ли для отслеживания.
Скриншоты — это не просто снимки экрана. Лучше всего работают оформленные изображения с коротким заголовком, объясняющим пользу каждого экрана.
Шаг 5. Модерация
После отправки сборки на проверку приложение попадает в очередь App Review. Большинство приложений проверяется в течение одного-двух дней, но первая публикация, сложные продукты и периоды высокой нагрузки могут удлинить сроки.
Чтобы проверка прошла гладко, обязательно заполните раздел с информацией для проверяющего:
- Тестовый аккаунт, если в приложении есть авторизация. Без него проверяющий не сможет увидеть функциональность, и приложение отклонят.
- Пояснения к неочевидным функциям: как попасть в нужный раздел, что делает конкретная кнопка, почему нужна та или иная функция.
- Демонстрационные данные, если приложение работает с оборудованием или специфическими условиями, которые сложно воспроизвести.
- Контакты человека, который сможет оперативно ответить на вопросы.
Частые причины отказов
Отказ в публикации — нормальная часть процесса, особенно для первого релиза. Вот что встречается чаще всего:
- Сбои и баги. Приложение падает при запуске или на одном из экранов. Проверяющие тестируют на актуальных устройствах и версиях системы.
- Неработающая авторизация. Тестовый аккаунт не указан, заблокирован или не имеет доступа к ключевым функциям.
- Незавершённость. Заглушки, тестовый контент, неработающие кнопки, разделы «в разработке».
- Минимальная функциональность. Приложение, которое просто открывает сайт в окне, без дополнительной ценности, отклоняют.
- Нарушение правил платежей. Продажа цифрового контента или подписок в обход встроенных покупок.
- Нет удаления аккаунта. Если в приложении можно зарегистрироваться, должна быть и возможность удалить аккаунт прямо из приложения.
- Вход через сторонние сервисы. При использовании сторонней авторизации может требоваться альтернативный вариант входа, соответствующий требованиям к приватности.
- Неполные описания разрешений. Текст вроде «Приложению нужен доступ к камере» без объяснения, зачем.
- Несоответствие метаданных. Скриншоты не отражают реальный интерфейс, описание обещает функции, которых нет.
Если приложение отклонили, в App Store Connect приходит сообщение с указанием конкретного пункта правил. Можно исправить замечание и отправить заново, ответить с пояснениями или, если вы не согласны с решением, подать апелляцию.
Шаг 6. Релиз и после него
После одобрения приложение можно выпустить несколькими способами:
- Автоматически — сразу после одобрения.
- Вручную — когда вы нажмёте кнопку. Удобно, если релиз нужно синхронизировать с маркетинговой кампанией или обновлением сервера.
- Поэтапно — обновление распространяется на пользователей с автообновлением постепенно в течение недели. Это снижает риски: если обнаружится критическая ошибка, распространение можно приостановить.
После релиза работа не заканчивается:
- отслеживайте отчёты о сбоях в App Store Connect и в своей системе аналитики;
- отвечайте на отзывы — это влияет на доверие новых пользователей;
- планируйте регулярные обновления: Apple периодически требует пересборки под новые SDK;
- следите за изменениями в правилах магазина.
Чек-лист перед отправкой на проверку
- Аккаунт организации оформлен на компанию-владельца.
- Сборка протестирована на нескольких моделях iPhone и, при необходимости, iPad.
- Все тексты разрешений понятны и конкретны.
- Политика конфиденциальности опубликована и доступна по ссылке.
- Есть функция удаления аккаунта.
- Заполнены сведения о конфиденциальности и возрастной рейтинг.
- Подготовлены скриншоты всех обязательных размеров.
- Указан рабочий тестовый аккаунт с доступом ко всем функциям.
- В приложении нет тестовых данных и заглушек.
Вывод
Публикация в App Store — это полноценный этап проекта, а не формальность в последний день. Регистрация аккаунта, подготовка страницы, бета-тестирование и модерация вместе занимают от нескольких дней до нескольких недель, и это время нужно закладывать в план заранее.
Чем раньше вы начнёте готовить аккаунт и материалы для магазина, тем спокойнее пройдёт релиз.
Мы сопровождаем публикацию для всех проектов, которые разрабатываем: от регистрации аккаунта до ответов модераторам. Подробнее — на странице разработки под iOS, а о дальнейшей жизни приложения после релиза — в разделе поддержка и развитие.