Как пройти модерацию App Store в 2024-м и что учесть, чтобы релиз прошёл в срок
Всем привет! Это Эд Хорьков из КОД9. Мы 14 лет занимаемся мобильной разработкой и уже набили шишек на релизах в App Store: знаем, что может смутить их модерацию, отложить релиз и поставить заказчика и разработчиков в ступор. В статье обобщим опыт наших последних запусков и расскажем, на что стоит обратить внимание.
О модерации в App Store — кратко
Сначала хочу объяснить, как в целом устроен процесс и с чем вообще могут возникнуть трудности. Если уже знаете, как проходит ревью в App Store, можно сразу перейти к советам →
Ваше приложение будет смотреть живой человек. В процессе наверняка есть и автоматизация, но большинство сценариев проверяют вручную. Имейте это в виду и сделайте так, чтобы модератор разобрался, как всё устроено, смог залогиниться и дойти до ключевых функций.
С модератором даже можно переписываться, но надеяться на скорость ответов не стоит. Если вам и придётся общаться, это будет больше похоже на переписку по электронной почте, чем на чат. Если проблем не будет, на проверку уйдёт 2–3 дня.
Приложение будут тестировать не только на айфоне, но и на айпаде. Ещё и на компьютерах с процессором Apple Silicon, если вы включили такую опцию в App Store Connect:
Учитывайте, что приложение посмотрят не только на телефонах и тщательно протестируйте всё перед релизом. Если включите возможность запуска на Mac, убедитесь, что там всё тоже работает корректно.
Если случится хотя бы один крэш, в релизе откажут. Если багов будет много — тоже. Поэтому на релиз важно отправлять версию, в которой вы уверены.
Если возникнут основания для отказа, дальше смотреть не будут. Например, если модератор не сможет авторизоваться, вам сразу придёт отказ.
Проблемы могут быть не с приложением, а в метаданных. Подойдите к ним серьёзно и выделите время. Например, суммарно только на заполнение у нас уходит примерно 2–2,5 часа — без учёта времени на подготовку скриншотов и описания.
С метаданными как раз и возникают самые неожиданные проблемы — ниже расскажу об этом подробнее.
Если есть платная подписка или покупки в приложении, заранее добавьте их в App Store Connect
Теперь представим, что у вас уже есть рабочая версия приложения. Вы всё продумали и уверены, что готовы к релизу. Тогда ваша задача — разобраться с метаданными.
Начнём с монетизации. Все подписки, покупки дополнительного контента и новых функций в приложении нужно реализовать через In-App purchases. А их, в свою очередь, тоже придётся настраивать в App Store Connect.
Если впервые делаете релиз в App Store, и у приложения есть внутренние покупки, их важно добавить заранее и подать на проверку (submit) вместе с самим приложением. Иначе модераторы его отклонят.
🔧 Как это сделать. Чтобы настроить In-App Purchases, нужно указать суммы и валюту всех возможных покупок, добавить скриншоты всех тарифных планов, дать ссылку на Terms of use и вашу политику конфиденциальности. Внутри App Store Connect это выглядит вот так:
А вот примерный текст Terms of use, который также нужно будет добавить для настройки внутренних покупок. В нашем случае говорим, что есть бесплатная версия на неделю и ещё несколько вариантов подписок на разный срок:
📲 История о том, как мы не прошли модерацию. Однажды мы отправили на проверку приложение, в котором были платные подписки, но для их покупки нужно было уйти на сайт. Модераторы это заметили и не дали нам запуститься.
Пришлось настроить In-App Purchases. А для этого нужно было быстро разработать и добавить в приложение функцию платной подписки, возможность регистрироваться и авторизовываться — раньше всё это делалось через сайт. Причём разработка логики In-App Purchases была гораздо сложнее и заняла больше времени, чем регистрация и авторизация.
В итоге релиз состоялся, но мы с заказчиком потратили больше времени и нервов, чем планировали.
Если в приложении есть регистрация, предусмотрите учётную запись для модератора
Модератор App Store будет тестировать ваше приложение из США. Это значит, например, что получить смску от российского сервиса он, скорее всего, не сможет. Если это помешает ему зарегистрироваться в приложении, то в релизе сразу откажут, даже не разбираясь с другими функциями — ведь дойти до них и не получится.
🔧 Как это сделать. Советуем вручную завести учётную запись специально для модератора и убедиться, что у этого профиля будет полноценный доступ ко всем функциям даже из другой страны.
Добавить логин и пароль нужно в пункт App Review Information в App Store Connect. А ниже там есть поле Notes, где можно расписать остальные нюансы регистрации и авторизации, которые важно знать модератору.
Перепроверьте список данных, которые собираете о пользователях
В метаданных обязательно нужно указать, какую информацию о пользователях вы будете собирать и зачем. Вы вряд ли забудете упомянуть, что приложению нужны почты и имена людей, чтобы создавать профили. Но есть риск забыть о технических данных.
Например, важно указать, что данные уходят в аналитические системы. Многие наши приложения отдают информацию в Crashlytics, с помощью которой мы оцениваем производительность и смотрим, с какими ошибками и крэшами сталкиваются пользователи. Ещё мы часто используем Amplitude — туда передаётся ещё больше информации. Если не рассказать об этом, приложение может не пройти модерацию.
🔧 Как это сделать. Среди метаданных есть раздел App Privacy — там нужно указать все данные, которые приложение собирает о пользователях.
Перепроверьте категорию — особенно если выпускаете MVP
Если модераторы решат, что набор функций в приложении не соответствует обещанному в метаданных, в релизе могут отказать. Поэтому важно точно выбрать категорию — это особенно актуально, если запускаете не совсем полноценный продукт, а MVP.
Например, вы хотите запустить новую соцсеть и решили протестировать спрос. Но в MVP у вас можно только регистрироваться и писать посты, а реагировать на них нельзя. В таком случае пока нет смысла ставить категорию Social Networking — есть риск, что приложение отклонят, потому что социальных механик в нём недостаточно.
🔧 Как это сделать. У приложения можно выбрать первичную и вторичную категорию в выпадающих списках.
Внимательно отнеситесь к выбору категории и не обещайте несуществующих функций в других метаданных, например, описании и скриншотах.
📲 История о том, как мы не прошли модерацию. Один наш заказчик хотел выпустить приложение для интернет-магазина. Но в первой версии заказывать товары в нём было нельзя: для этого приходилось отправлять в чат с поддержкой ссылки на то, что хотите купить. Приложение вышло странным, но планировалось, что этого хватит для проверки гипотезы.
В итоге вышло так: в названии было слово «интернет-магазин», в описании мы обещали функции интернет-магазина, поставили категорию Shopping, но купить там товары было нельзя. В релизе нам отказали.
Если делаете приложение для носимых устройств, отправьте модератору видео с ним
Задача модераторов App Store — проверить все функции. Если они сталкиваются с тем, что часть из них нельзя протестировать, в релизе могут отказать. Поэтому если делаете приложение для носимых устройств, продумайте, как покажете модератору процесс подключения и работы с девайсом.
🔧 Как это сделать. Предусмотрите рассказ о том, как работает ваше носимое устройство и как с ним можно взаимодействовать — это стоит записать на видео.
📲 История о том, как мы не прошли модерацию. Мы сделали приложение для портативных мышечных стимуляторов PowerDot. Девайсом пользуются спортсмены, фитнес-энтузиасты и другие люди, которые ведут активный образ жизни. Мы уже подробно рассказали об этом проекте в другой статье:
Перед первым релизом модераторы попросили нас отправить девайсы к ним в Калифорнию, чтобы проверить, как всё работает. Посылка шла около месяца, и всё это время мы ждали ревью. Кстати, Apple так и не вернули стимуляторы обратно.
А во время релиза одного из обновлений модераторы потребовали у нас видео, на котором будет понятно, как работает стимулятор. Пришлось записать процесс подключения девайса к телефону и показать, как проходит одна из программ стимуляции.
Кратко: что учесть при публикации в App Store, чтобы не было проблем на модерации
👉 Если в приложении будет платная подписка или покупки, их придётся добавить через In-App purchases, которые важно заранее настроить в App Store Connect. Заложите на это время.
👉 Если в приложении есть регистрация, сделайте учётную запись для модератора — он будет тестировать приложение из США. Если ревьюер не сможет залогиниться, то сразу откажет в релизе.
👉 В метаданных обязательно нужно указать, какую информацию о пользователях вы будете собирать и зачем. Не забудьте добавить туда все данные, которые уходят в аналитические системы, например, Crashlytics или Amplitude.
👉 По гайдлайнам Apple бета-версии и MVP нельзя публиковать в App Store, их нужно запускать только через TestFlight. Но если всё же решили тестировать спрос с MVP, не пишите об этом в метаданных. И будьте осторожны с категорией: если модераторы решат, что набор функций не соответствует обещанному, в релизе откажут.
👉 Если делаете приложение для носимых устройств, продумайте, как покажете модератору процесс подключения и работы с девайсом. На первом релизе PowerDot мы отправляли устройства в Калифорнию, а при одном из обновлений пришлось снять их на видео.
Мы давно занимаемся мобильной разработкой и набрали большой опыт по работе с App Store. Обращайтесь, если нужно выпустить приложение или помочь с проблемами во время релиза ↓