Вы упорно занимались, трудились, и вот наконец настал день, когда вы готовы выложить ваше первое приложение в AppStore. Вы правильно делаете, что читаете эту статью с шампанским 🍾, а на вечер у вас забронирован бар, однако не спешите, придётся ещё немного попотеть.
Давайте разберемся, как опубликовать наше первое приложение в AppStore.
Во-первых, для публикации приложений нужна подписка Apple Developer Program. Её можно оформить на сайте https://developer.apple.com/. Сам аккаунт Apple Developer скорее всего у вас уже есть, если нет, то для входа в него можно использовать свой Apple ID.
Подписка стоит 99$ в год. Я оформил подписку в январе 2024 года, она обошлась мне в 8 990 рублей. Что касается оплаты, я пользуюсь услугами МТС, основным плюсом которого является возможность оплаты подписок Apple и покупок в AppStore прямо со счета телефона.
Без подписки опубликовать приложение не получиться, даже если оно ну очень хорошее.
Последнее, что стоит добавить - это срок активации подписки, у меня она активировалась примерно через три рабочих дня после оплаты. То есть это происходит не сразу.
Можете сразу скачать себе на iPhone и iPad и Mac приложение Apple Developer и приложение Connect на iPhone.
Что нужно подготовить для публикации приложения:
У приложения должна быть иконка. Размеры: 1024 х 1024.
Принскрины приложения. Их можно делать непосредственно принтскринами, но можно подойти к вопросы креативно:

Есть мнения, что в 2024 году, колхозить, как на примере выше, уже дурной тон. Я, честно говоря, никогда не выбирал приложения из магазина, всегда знал, что мне нужно и на оформление не смотрел, поэтому мне сложно дать свою оценку дизайну. Советую потратить время и изучить рекомендации, тренды и успешные кейсы по этому вопросу.
Так или иначе, вы должны подготовить:
от 3 до 10 снимков экрана размером 1290 x 2796px (iPhone 15 Pro Max)
от 3 до 10 снимков экрана размером 1242 x 2208px (iPhone 8 Plus)
Где брать снимки экрана? - Удобнее всего в симуляторе, там даже предусмотрена специальная кнопка:

В завимимости от выбранного устройства в симуляторе - снимок экрана сохраняется сразу в нужном разрешении:

Не очень понятно, зачем прикладывать принскрины для iPhone 8 Plus, если у вашего приложения минимальная ОС iOS 17, наверно это баг и его уберут позже. Тем не менее, если вдруг у вас в списке устройств симулятора нет iPhone 8 Plus, то вот как его туда добавить:
нажимаем на список устройств,
выбираем Manage Run Destinations,
в открывшимся окне переключаемся на вкладку Simulators и нажимаем внизу плюсик,
в окне добавления симулятора выбираем iPhone 8 Plus и, если у вас графе OS Version нет вариантов, то выбираем Download more simulator runtimes…

откроется окно настроек установки операционных систем, нажимаем плюсик, выбираем iOS…
в списке ОС выбираем нужную нам (любую iOS 16)
дальше понятно: в обратном порядке выбираете, добавляете и запускаете нужный симулятор

Если ваше приложение не поддерживает iOS 16 (если вы на передовых технологиях 😎 как я), остается только наколхозить фейковый принтскрин размером 1242 x 2208px. Для этого можно использовать Keynote с ручным заданием размера слайда:

Далее файл - экспортировать в… - изображения.
Поправьте меня в комментариях, если знаете как в App Store Connect обойти обязательное добавление принтскринов с устройства, которое не поддерживается приложением…
Если вдруг не знаете как включить в симуляторе тёмную тему, то это делается через настройки виртуального устройства:

Если ваше приложение адаптировано для iPad, то тогда еще нужно:
от 3 до 10 снимков экрана размером 2048 x 2732px (iPad Pro 12.9)
Возвращаемся к списку, что нужно подготовить для публикации приложения:
Рекламный текст, он должен быть до 170 символов, то есть это не текст - а слоган.
Для нашего приложение с курсами криптовалют мы уместили максимально вот такой текст: «Просто, быстро и бесплатно: ваши криптовалюты под контролем, новое приложение для инвесторов и трейдеров! Отслеживайте свои инвестиции в реальном времени!»
Что касается самого текста (и следующих пунктов тоже), врятли у вас гигантский бюджет на продвижение вашего приложения, поэтому очень важно грамотно прописать все пункты, по которым App Store будет выдавать (или не выдавать) в поисковых запросах наше приложение.
Поэтому очень советуем для первого приложения не писать «моё первое приложение», «меня зовут…», «я очень старался», «оно и правда хорошее» и т.д. 🤣 Очень рекомендуем воспользоваться сервисом, который анализирует весь AppStore, популярность приложений и предлагает оптимальные тексты, теги и т.д. Один из таких сервисов например asomobile.net, у сервиса есть 7 дневный пробный период, отлично подойдет, чтобы по крайней мере разобраться в теме.
Описание. Вот здесь можно написать, всё что нужно. Объем 4000 символов позволит указать полное описание, назначение, инструкцию, авторство и т.д.
Повторюсь, я такие описания никогда не читаю, поэтому не специалист в этом, и полностью полагаюсь тексты предлагаемые нейро-сетями с учетом данных аналитики.
Ключевые слова - говорят, что название и ключевые слова больше всего влияют на выдачу
URL-адрес службы поддержки и Маркетинг-URL (не обязательно)
В следующих разделах будет необходимость публиковать также ссылку на Политику конфиденциальности, поэтому стоит создать страничку в интернете, посвященную вашей деятельности (если конечно у вас её еще нет). Если вы начинающий фрилансер или типа того, то рекомендую сделать сайт-визитку с портфолио ваших приложений и сделать на этом сайте отдельный раздел с требуемыми документами.
По правде сказать, вы можете разместить ссылки и на свои соцсети, их так тщательно не проверяют, и не заморачиваться с сайтами - если, например, вы делаете приложение только для членов своей семьи или что-то типа того.
Политика конфиденциальности, размещенная на сайте. Про сайт написал выше, саму политику можно сгенерировать в интернете, просто напишите в поисковую строку «сгенерировать политику конфиденциальности» и вам выдадут кучу результатов сайтов, которые сгенерируют её для вас. Вот пример такого сайта: https://www.freeprivacypolicy.com/free-privacy-policy-generator/
Окей, переходим к основному.
Вы проверили свое приложение, у вас установлена иконка приложения, вы протестировали во всех световых схемах и на всех ориентациях и готовы к публикации. Если не уверены, то наша статья про адаптацию приложения к настройкам устройства к вашим услугам.
2. Выгружаем проект из Xcode
Проверяем, чтобы окне выбора устройств назначения было выбрано «Any iOS Device (arm64)»:

Далее выбираем Product - Archive:

Открывается окно архивов проекта. Как мы видим, архив нашего приложения создан. Теперь мы можем его отправлять в Apple Connect. Нажимаем Distribute App:

Далее открывается окно выборе назначения. В этой статье речь идёт про выгрузку приложения в AppStore, поэтому выбираем пункт AppStore Connect.

Задаём имя, под которым наше приложение будет выставляться в AppStore, и основной язык приложения:

Нажимаем Next и открывается окно статуса выгрузки проекта:

Если всё успешно, то вы увидите такой результат:

Теперь можно переходить в AppStore Connect. Загрузка выполнена неуспешно, внимательно читайте описание ошибок, как правило, там какая-нибудь одна ерудна, если исправить которую, все остальные ошибки уйдут.
3. Переходим в AppStore Connect
Открываем сайт https://appstoreconnect.apple.com/apps

Заходим под своим аккаунтом разработчика с действующей подпиской Apple Developer Program.
Приложение должно появиться в списке ваших приложений. Если оно первое, то оно тут будет одно:

Открываем и заполняем все разделы и поля:
1. Подготовка к отправке:

загружаем подготовленные принтскрины, не забываем про вкладки с iPhone 5.5 дюйма (это для принтскринов iPhone 8 plus) и про iPad, если ваше приложение поддерживает iPad. Вкладка iPhone 6.5 заполниться сама из 6.7 дюймовой модели, а вот для более старого iPad 12.9 нужно будет второй раз загрузить принтскрины:

заполняем Рекламный текст, Описание, Ключевые слова, которые вы подготовили заранее;
заполняем URL-адрес службы поддержки, где указываем сайт своей компании, свой сайт как фрилансера или на крайний случай ссылку на свою социальную сеть;
в Авторские права можно написать что угодно, можно своё ФИО и текущий год;
Мы находимся на вкладке «Распространение» нашего приложения. Теперь давайте перейдём на вкладку TestFlight:

находим нужную сборку и нажимаем управлять экспортными документами:


выбираем соответствующий пункт, нажимаем сохранить и возвращаемся обратно на вкладку «Распространение». Находим раздел «Сборка», добавляем сборку:


далее переходим в раздел «Информация для проверки приложения», убеждаемся, что у нас не стоит галочка «Необходимо войти» (если конечно у вас не закрытое приложение) и заполняем контактную информацию для того, чтобы Apple в случае вопросов могла с вами связаться:

нажимаем сохранить в правом верхнем углу:

далее переходим в раздел Информация о приложении:

заполняем подзаголовок, проверяем название:

в разделе Общая информация заполняем Права на контент:


далее открываем Установить возрастное ограничение на всех платформах, запоняем анкету и Connect сам определит возрастное ограничение для вашего приложения:




далее выбираем категорию, соответствующую вашему приложению и если оно пограничное, то вторую категорию:

обязательно нажимаем наверху «Сохранить»:

переходим в раздел Конфиденциальность приложения:

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


далее нажимаем начать, чтобы пройти анкету по сбору данных:


ну как не устали? Уже почти всё! Переходим в раздел Ценообразование и доступность:

в разделе ведомость цен нажимаем кнопку Добавить цены:

в нашей статье мы рассматриваем первую публикацию приложения, поэтому врятли (раз вы это читаете) вам нужно указывать цену. Вообще, проблематику цен, подписок и всего этого в условиях санкций мы рассмотрим в отдельной статье чуть позже, в этой же мы делаем наше приложение бесплатным и доступным:



после того как мы установили цены нажимаем кнопку настройка доступности приложения и задаём страны, в которых ваше приложение будет доступно. Даже если ваше приложение поддерживает только русский язык, учитывайте, что русско-говорящие люди живут практически во всех странах мира и возможно будут рады вашему приложению именно на русском языке:


Ну что друзья, кажется наконец-то всё!
После того, как мы всё это сделали - нажимаем Добавить для проверки 🎉🎉🎉

После этого, сайт проверяет наличие незаполненных полей и выводит список того, что не заполнено. Если вы делали всё внимательно, то ошибок быть не должно, но почему-то они всегда есть 😂. Не пугаемся, спокойно исправляем их и опять нажимает Добавить для проверки.
Когда все ошибки устранены - нажимаем Отправить на проверку приложения и с чистой совестью идём с бар)

Если вы установили себе на iPhone прилжения, которые я вам рекомендовал в начале, и вошли в них, то вы уже получили два уведомления, что ваше приложение готово к проверке и ожидает проверку.
Ну и через день-два вы получите заветное уведомление:

Мы с вами рассмотрели базовый путь публикации приложения, но во всех подробностях.
Надеюсь, эта статья была вам полезна, а ваше приложение достигнет высших мест в чартах App Store!
Не благодарите. Но про лайк не забывайте 👇🏼
Кстати, у нас есть телеграмм-канал, Дзен и группа ВК