У команды Apple есть четкое видение качества мобильных приложений. Это действительно здорово для пользователей, потому что команда Apple прилагает все усилия, чтобы сделать App Store надежной экосистемой. Магазин приложений имеет высокий порог и жесткие требования не только к производительности приложения, но и к применению соответствующих мер безопасности. Пользователь может быть уверен в надежности iOS-приложений.

Однако выполнение всех требований может стать настоящим адом для разработчиков. Для сравнения: разработка приложения может занять всего несколько недель, в то время как время, потраченное на прохождение обзора в App Store, может составлять до месяца (или даже месяцев, если разработчик не соблюдает рекомендации Apple для разработчиков).

Я работаю в Дашдевс в качестве привлеченного клиента. Моя основная задача - создавать приложения с нуля, чтобы они прошли проверку. Работаю с требованиями клиентов. У нас более 9 лет опыта в разработке приложений для iOS. Мы работали с разными рынками, отраслями и разными компаниями.

Сложность приложений также различается. В течение 2018 года мы отправили на рассмотрение более 250 приложений. Не все из них прошли проверку с первого раза. Но иногда от хорошего обзора мы чувствовали настоящую безудержную радость.

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

Как подать заявку в App Store

Новое блестящее приложение для iOS разработано, протестировано и готово увидеть мир. Двоичный файл уже загружен на панель iTunes Connect. Но что еще нужно?

  • Вам необходимо добавить основную информацию (описание, теги, контакты) о вашем приложении, добавить снимки экрана и учетные данные демо-учетной записи пользователя (если ваше приложение требует авторизации).
  • Вам необходимо включить подробные объяснения неочевидных функций (например, использования встроенных жестов) и покупок в приложении в примечания к обзору приложений.
  • Затем вам нужно нажать кнопку «Отправить на проверку», чтобы сообщить Apple, что ваше приложение готово для размещения в App Store.

Вы получите уведомление, если что-то важное в описании отсутствует. Тогда проверка статуса заявки будет изменена на «Ожидает рассмотрения». До начала настоящей проверки может пройти несколько дней. Когда группа проверки фактически начнет рассмотрение, статус заявки изменится на «На рассмотрении».

Подсказка: вы сэкономите немного усилий, установив приложение iTunes Connect на свой iPhone, чтобы получать немедленные уведомления обо всех изменениях статуса.

Проверка App Store - обязательный этап для всех приложений. Процесс проверки приложений соответствует рекомендациям Apple, обеспечивая наилучшее и безопасное взаимодействие с пользователем.

Они также просматривают первичную информацию о приложении. Часть проверки выполняется автоматически с помощью скриптов, а другая выполняется людьми. Если в вашем приложении есть проблема, вы получите уведомление с точным описанием того, что следует исправить. Срок проведения первого этапа проверки составляет от 3 до 7 дней. Проверка обновлений приложения происходит быстрее - от 1 до 3 дней.

За последние несколько лет у меня возникли проблемы с поданными на рассмотрение заявками. Некоторые из них было легко исправить, а некоторые заняли много часов.

Итак, почему ваши приложения не прошли с первого раза?

Вот что вам нужно принять во внимание.

Используйте при разработке руководство по интерфейсу пользователя (HIG)

Ваши дизайнеры должны с самого начала следовать HIG. Размеры и положение кнопок, правильное использование основных элементов пользовательского интерфейса и навигация должны соответствовать рекомендациям Apple. Исправление проблем с HIG может стоить вам очень дорого, если вы обнаружите эти проблемы в конце разработки.

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

Проверьте список функций

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

Был случай, когда одно из наших приложений было отклонено, потому что группа проверки Apple предположила, что в нашем приложении не требуется функция регистрации / входа. Итак, мы отправили уведомление об апелляции с доказательствами актуальности данной функциональности.

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

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

Предоставьте команде Apple демо-аккаунт с полной функциональностью

Группа проверки App Store обязательно попытается зарегистрировать ваше приложение, но им также необходимо будет проверить остальные функции. Например, чтобы просмотреть функциональные возможности банковского приложения, им необходимо иметь учетную запись с активированной картой и некоторыми транзакциями по ней. Вы должны быть уверены, что учетная запись имеет доступ ко всем функциям и все внутренние функции включены.

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

В приложении нет «тест», «скоро», «бета», «пробная версия», «тестовый полет».

Все ваши будущие незаконченные демонстрационные функции не должны использоваться в приложении. Ни в коем случае не используйте эти слова для содержания вашего приложения, даже для снимков экрана и описаний внутри приложения. Если вам необходимо протестировать свое приложение, вы можете присоединиться к Услугам Testflight.

Однажды мы совершили нелепую ошибку с другим нашим приложением. Как вы, возможно, знаете, чтобы подготовить заявку на рассмотрение, разработчики иногда делают снимки экрана приложения прямо из TestFlight. Эти изображения размещены как скриншоты реального приложения для App Store. Если вы это сделаете, проверьте дважды, так как в строке состояния может быть метка «Testflight». Когда это происходит, ваша заявка отклоняется. Эта мелочь может заблокировать отправку вашей заявки.

Производительность

Для приложений App Store не допускаются сбои, низкая производительность и утечки памяти. Неполные комплекты приложений и двоичные файлы, которые дают сбой или работают с очевидными техническими проблемами в приложениях, сразу отклоняются.

Опишите только существующие функции

В описании приложения не должно быть рекламы будущих функций.

Условия использования / Политика конфиденциальности.

Эти документы или ссылки на них необходимо добавить в приложение. Вам необходимо объяснить пользователю, как обрабатываются его конфиденциальные данные и какие данные передаются приложением третьим лицам и для каких целей (например, инструменты аналитики, рекламные сети, сторонние SDK и т. Д.). Пользователь должен знать политики удаления и хранения вашего приложения.

Интеллектуальная собственность

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

Лицензии

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

Другой случай из нашего опыта: приложение использовало специальный принтер для наклеек. Сначала заявка была отклонена, и нам нужно было получить сертификат для использования этих принтеров. Получение официального одобрения от производителя оборудования заняло у нас месяц.

Другой пример - приложение цифрового банка. Нам нужно было предоставить группе проверки App Store лицензию на электронные деньги. Это также относится к индустрии криптовалют.

«Приложения, облегчающие первичное предложение монет (« ICO »), торговлю фьючерсами на криптовалюту и торговлю другими крипто-ценными бумагами или квази-ценными бумагами, должны поступать от авторитетных банков, фирм по ценным бумагам, продавцов фьючерсных комиссий (« FCM ») или других утвержденных финансовые учреждения и должны соблюдать все применимые законы ».

Спросите у пользователя разрешения

Ваше приложение должно запрашивать разрешения на использование камеры, микрофона, местоположения, доступа к контактам, Camera Roll и местоположениям пользователей. Разрешения должны соответствовать функциональности приложения. Команда App Store заботится о том, чтобы информация, собранная в приложении, хранилась надлежащим образом, и предотвращает ее несанкционированное использование, раскрытие или доступ третьими лицами.

Совет: не забудьте добавить описание этих разрешений в файл .plist. Это еще одна распространенная причина отказа.

В приложении нет данных макета

Если в вашем приложении нет содержимого для некоторых необходимых вам форм, скройте этот элемент или добавьте для него заполнитель с объяснением, как пользователь может получить необходимые данные.

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

С рекламой то же самое - вы не можете отправить приложение с пустыми рекламными баннерами или тестовыми объявлениями.

Возможность модерировать контент пользователя

«Блокировать пользователя / контент», «сообщить о пользователе / ​​контенте», «черный список для пользователей» - обязательные функции для приложения, если оно обеспечивает многопользовательское общение (например, каналы, чаты, группы). Как владелец продукта, вы должны осознавать, что ваше приложение будут использовать разные люди, и некоторые из них могут мешать другим. Вы должны предоставить пользователям возможность управлять контентом и сообществом, с которым они взаимодействуют.

Варианты выпуска

С каждой отправкой на рассмотрение моя команда приобретает новый опыт. Мой главный совет - отправляйте свое приложение на рассмотрение в App Store, как только вы разработали MVP своего приложения. Имейте в виду, что даже если вы пройдете проверку, это не означает, что приложение будет выпущено.

После успешной проверки вы можете предпринять три различных действия:

  • Выпустите эту версию вручную: разработчику или менеджеру приложения необходимо перейти на панель iTunes Connect и нажать кнопку, чтобы выпустить приложение.
  • Выпустить эту версию автоматически: это означает, что приложение будет опубликовано, как только оно пройдет проверку.
  • Выпустить эту версию автоматически после проверки приложения, не ранее…: вы можете выбрать время и дату выпуска. Если ваша заявка пройдет проверку, она будет опубликована в это время.

Эти параметры могут помочь разработчикам и владельцам продуктов / менеджерам пройти проверку и дождаться начала маркетинговой кампании. Вы должны знать, что первая проверка приложения является наиболее важной, поэтому команда App Store проверяет приложение в течение более длительного периода и более тщательно. Каждое последующее обновление также проверяется, но на проверку уходит меньше времени. Иногда может потребоваться всего несколько часов.

Магазин приложений может отклонить вашу заявку. Это нормально. Не паникуй. Если вы понимаете причину, просто устраните проблему и повторно отправьте заявку на рассмотрение. Если у вас есть вопросы или вы хотите предоставить дополнительную информацию, вы можете использовать Центр разрешения проблем, чтобы связаться с группой проверки приложений. Они поддержат вас и готовы помочь вам с вашим заявлением. С их помощью мы исправили множество проблем.

Я надеюсь, что мои примеры, упомянутые в этой статье, будут вам полезны, и все ваши приложения для iOS пройдут проверку в App Store с первой попытки.

P.S. Полезные ссылки: