Оглавление

    За что App Store может отклонить приложение

    App Store — самая строгая площадка для размещения приложений. Ревью проходит дольше и строже, чем у Google Play и Huawei App Gallery. В 2020 году AppStore отклонил миллион приложений, которые публиковались впервые, и миллион апдейтов.

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

    Например, получить отказ в публикации можно, если в приложении есть контент, защищённый авторскими правами, —причём даже если он на скриншотах в магазине Apple. А если приложение связано со здоровьем, придётся предоставить описание алгоритмов и уровень точности снимаемых приложением показаний.

    Мы составили чек-лист очевидных и не очень очевидных причин, по которым AppStore отклоняет приложения. Ниже раскроем подробнее каждый пункт. Сам чек-лист вы найдёте в конце статьи.

    Политика конфиденциальности и данные пользователей

    Нет ссылки на пользовательское соглашение. Ссылка должна быть и внутри приложения, и на странице в магазине. Если ссылка ведёт на сайт компании, соглашение должно быть размещено там и ссылка должна работать. 

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

    Функциональные требования

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

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

    У нас, например, однажды отклонили приложение, потому что в нём была подключена, но не использовалась библиотека для Apple Pay.

    UI, не соответствующий Human Interface Guideline. Сложное для использования приложение, имеющее нелогичное поведение и расположение элементов, отклонят. 

    Необоснованный запрос на доступ к файлам или функциям устройства. Нужно запрашивать доступ только к тому, что необходимо для работы приложения. Также придётся обосновать для пользователя, зачем приложению это нужно — обойтись фразой «Предоставьте доступ к геолокации» не получится. 

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

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

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

    Для распознавания по FaceID используются сторонние технологии. Идентификация пользователя по FaceID должна происходить только с помощью библиотеки LocalAuthentication. 

    Нет входа по AppleID, если есть возможность входа через соцсети. Это обязательно для iOS 13 и новее.

    Оформление приложения

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

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

    Есть слова «Beta», «Demo» или «Debug» в названии приложения. Такие приложения запрещены к публикации в магазине App Store. Для бета-версий есть Test Flight. 

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

    Скриншоты приложения, иконка и другой контент на странице магазина не подходят для аудитории 4+.  И не важно, что приложение может быть не предназначено для такого возраста: аудитория App Store — дети от четырёх лет.

    Контент не соответствует возрастной метке. При публикации нужно пройти опрос, чтобы установить возрастную метку приложения. Если контент ей не соответствует, приложение или обновление отклонят при публикации.

    Не стоит указывать в описании или на скриншотах, что продукт имеет отношение к Apple либо компания отвечает за качество, если это не так. Если приложение станет выбором редакции, Apple автоматически установит на нём соответствующую иконку.

    Файл с расширением .ipa превышает размер 50 мб в момент публикации.

    Нет демо-пользователя для ревью, если приложение требует обязательной авторизации.

    Не указаны правила участия и выигрыша, если в приложении есть розыгрыши, рулетки или казино. Следует явно написать, что Apple не имеет отношения к этим конкурсам и розыгрышам. 

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

    Приложение опубликовано от имени разработчика. Приложения, которые предоставляют банковские услуги, услуги относящиеся к здравоохранению, авиа- и ЖД-перевозкам, нужно публиковать от имени компании. Apple не позволит опубликовать такое приложение с собственного аккаунта разработчика. 

    В период пандемии этот пункт стал особенно важен: Apple строго следит за распространением информации, связанной с COVID-19. 

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

    Контент оскорбляет людей разных рас, вероисповеданий, сексуальной ориентации, национальности.

    Приложение поощряет незаконное использование оружия или позволяет его купить. 

    Есть откровенно сексуальный или порнографический контент.

    Приложение разрешает анонимную отправку SMS/MMS, анонимные звонки, розыгрыши.

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

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

    Покупки в приложении

    Цифровой контент продаётся не через in-app purchase. К цифровому контенту относятся подписки, музыка в приложении, видео, расширенный доступ к функциям.

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

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

    Приложение не предоставляет пользователю всю необходимую информацию о покупке до момента продажи. Это важно, если приложение использует Apple Pay. Также недопустима кастомизация окна оплаты. 

    Категория Kids

    Kids в App Store — отдельный вид приложений. К ним Apple относится максимально строго. Категория Kids делится на три подкатегории: до 5 лет, 6—8 лет, 9—11 лет.

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

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

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

    Чек-лист для ревью App Store

    Проверьте, что в приложении выполняются эти требования.

    Политика конфиденциальности и пользовательские данные

    • Есть ссылка на пользовательские данные.
    • Данные не передаются третьим лицам.

    Функциональные требования

    • Нет багов.
    • Не используется Private API.
    • Нет плейсхолдеров на экранах вместо реальных функций или контента.
    • UI соответствует Human Interface Guideline. 
    • Запрос на доступ к файлам или функциям устройства обоснован.
    • Приложение запрашивает у пользователя разрешение на доступ к данным.
    • Поведение системных функций, кнопок и жестов не изменено.
    • Приложение обеспечивает полное функционирования в сетях, которые поддерживают только IPv6.
    • Идентификация пользователя по FaceID происходит только с помощью библиотеки LocalAuthentication. 
    • Если есть возможность входа через соцсети, можно войти и через AppleID.

    Оформление приложения

    • В описании приложения не упоминаются другие платформы. 
    • Описание приложения полное и не вводит в заблуждение. 
    • В названии приложения нет слов «Beta», «Demo» или «Debug» в названии приложения. 
    • Новая функциональность в обновлённом приложении подробно описана.
    • Скриншоты приложения, иконка и другой контент на странице магазина подходят для аудитории 4+.
    • Контент соответствует возрастной метке.
    • Реклама соответствует возрастному рейтингу.
    • .ipa файл не превышает размер 50 мб в момент публикации.
    • Есть демо-пользователь для ревью.
    • Указаны правила участия и выигрыша в розыгрышах и конкурсах.
    • Приложение опубликовано от имени компании, если оно связано с банковскими услугами, услугами относящимися к здравоохранению, авиа- и жд-перевозкам.
    • Контент не оскорбляет людей разных рас, вероисповеданий, сексуальной ориентации, национальности.
    • Приложение не поощряет незаконное использование оружия или не позволяет его купить. 
    • Нет откровенно сексуального или порнографического контента.
    • Приложение не разрешает анонимную отправку смс/ммс, анонимные звонки, розыгрыши.
    • В приложении не поощряется употребление табака, электронных сигарет, запрещенных веществ или чрезмерное употребление алкоголя. 
    • У карты лояльности в wallet есть контактная информация.

    Покупки в приложении

    • Цифровой контент продаётся только через in-app purchase. 
    • Указана вероятность, с которой пользователь получит тот или иной предмет из лутбокса. 
    • Приложение не заставляет пользователя делать дополнительные действия, чтобы разблокировать контент или функции.
    • Приложение, использующее Apple Pay, предоставляет необходимую информацию о покупке до момента продажи. 

    Категория Kids

    • Нет внешних ссылок, покупок, или других отвлекающих факторов.
    • Соблюдены законы, касающиеся защиты конфиденциальности детей в интернете.