Нулевая ценность, Lorem Ipsum-тексты, баги и «падения» — это понятно. Посмотрим, что изменилось за год и пройдемся по неочевидным моментам на этапе ревью еще раз.
На шаге «Выложить приложение в App Store» Purrweb, компания по разработке мобильных приложений, успела съесть не одну собаку. Ниже представлены подводные камни, из-за которых публикация приложения может растянуться на недели (а то и месяцы). Уэлкам!
1. Отображение и управление подписками
Ребятам из команды App Store важно знать, что нажатие кнопки «купить» не влечет за собой никаких неожиданностей для юзера. Что это значит для вас? В первую очередь, отсутствие любых неочевидностей — весь доступный пользователям текст должен легко считываться, быть емким и понятным.
Ниже пример того, как менялся экран подписок для сервиса доставки еды Talentum, который мы разработали в Purrweb. Когда мы отправили первый билд, App Store его не пропустил, ссылаясь на размытую пользу в описании подписок. После реджекта мы решили навести прозрачность.
По итогу в релиз вышла версия, которую вы видите справа: Как видите, к релизу поменялось и название сервиса 🙂
Второй момент, на который обращают внимание при проверке сервисов по подписке: список с доступными планами должен помещаться на одном экране. Это полезно не только для пользовательского опыта, но и для самих тестировщиков Apple, которые точно обломаются жать на кнопку «Показать больше опций», в первую очередь, люди: c недосыпами, изжогой и плохим настроением. Будьте человеком и вы: не заставляйте кого бы-то ни было перелопачивать 25 экранов для того, чтобы изучить все доступные планы. Хотите вы или нет, в конце концов, выложить приложение в App Store?
Позаботьтесь также о создании кнопки «Управление подписками» (Subscription Management) — с ее помощью пользователь сможет отменить ранее выбранную подписку и поменять ее на более релевантную опцию. Тут важно предусмотреть возможность редиректа в глобальные настройки Apple ID.
Место, где мы чекаем не платим ли вдруг за что-то лишнее все подписки
Работать это будет так: пользователь жмет на кнопку «Отменить подписку» и приложение перекидывает его на нативный экран iOS’а, где отображаются все сервисы по подписке.
2. Возможность пожаловаться на других пользователей
Если планируете выложить приложение в App Store, важно также учитывать возможность «реджектить контент». Функция «пожаловаться» распространяется на все, что может создать или загрузить пользователь: аватарки, фотографии, видеоролики, текстовые публикации (например, те же объявления). Это значит, что приложениям по типу Instagram или Airbnb уже на старте понадобится фича, с помощью которой админ и пользователи смогут блокировать «непригодные» материалы с любыми намеками на жестокость, порнографию, дискриминацию социальных меньшинств или рекламу запрещенных веществ.
Для сервисов с функцией чата должна быть предусмотрена возможность блокировать пользователей во время переписки:
3. Aккаунт для тестировщика
Ревьюеры App Store мало заинтересованы в том, чтобы тратить уйму времени и усилий на регистрацию в каждом отправленном на ревью приложении. Сделать супер-минималистичную форму sign up — скорее всего, этого будет недостаточно для того, чтобы выложить приложение в App Store, потребуется чуть больше заботы. Позаботиться об участниках «яблочной» команды (и уменьшить вероятность отказа) не так уж сложно: достаточно подготовить тестовый аккаунт для сотрудников Эппл. Эврика!
В случаях, когда регистрация происходит по почте, все плюс-минус понятно. Как поступить, если пользователь попадает в приложение по номеру телефона? Обычно мы генерируем связку телефон+код и отдаем ее тестировщику — это позволяет попасть в приложение, минуя шаг с получением смс.
4. Скриншоты приложения без альфа-канала
Ни один скриншот не должен содержать информацию о прозрачности изображения. Это значит, что при сохранении итогового варианта PNG-шек альфа-канал должен быть выключен.
5. Наличие Terms of Use и Privacy Policy
Правила использования и Политика конфиденциальности — вы можете считать их формальными или бесполезными. Но! Будьте уверены, без этих двух документов вы не сможете выложить приложение в App Store.
Тестировщики App Store всегда обращают внимание на Политику и Правила Использования, но в содержание документов особо не вчитываются. Подготовить текст для этих документов не составит особого труда — достаточно изучить аналогичные страницы трех-четырех конкурентов, прогнать их содержание через фильтр адекватности и, если необходимо, адаптировать под себя. Альтернативный вариант — генераторы, которые предлагает Google (по запросу «App Terms of Use generator» уже вываливается куча вариантов).
Где размещать Политику и Правила Использования? И то, и другое должно быть в приложении. Плюс ко всему, для каждого документа должна быть создана веб-страница.
6. Использование данных юзеров/железа + пояснения к ним
Запрашивать геолокацию пользователя просто потому, что вы посчитали это нужным — следуя этой тактике, вряд ли вам удастся выложить приложение в App Store. Важно дать внятный ответ на вопрос «Что я делаю и для чего я это делаю». Причем объяснением на вопрос «Для чего?» должна быть очевидная для пользователя выгода. Вне зависимости от того, что вам нужно: доступ к галерее, камере, микрофону, геолокации или контактам пользователя.
Причину, из-за которой вам требуются те или иные данные/сервис, нужно указать в файле Info.plist в XCode
7. Нативный сервис оплаты для приложений по подписке
Для приложений по подписке, которые предлагают нематериальные блага (доступ к премиум-фичам, игровым плюшкам, контенту), не получится прикрутить ни Stripe, ни PayPal. Потребуется нативная платежная система Apple In-App Purchases. На мобильные «витрины» c реальными товарами (картины, кроссовки, косметику) это требование не распространяется.
P.S. Для подключения Auto-renewable подписок необходимо получить разрешение от App Store. Разрешение на автовозобновление выдается только после внесения юридической информации о бизнесе. Для команды Эппла это необходимое условие, помогающее отсеивать мошенников.
8. Специфика продукта
Если приложение связано со спортивными ставками, религией или попадает в категорию «Для детей», будьте готовы к тому, что переговоры с ревью-командой Apple могут потребовать несколько дополнительных итераций. Ни в коем случае не стоит расценивайте это как невозможность выложить приложение в App Store. Это просто ниша такая. Ну или «просто потому что».
Как это однажды случилось с нами во время работы над приложением для молитв
Что еще посмотреть и сделать?
Пробежимся по шагам.
Выложить приложение в App Store поможет изучение гайдлайнов. Собирать волю в кулак вам, скорее всего, не придется. Все изложено на доступном языке и с исчерпывающими объяснениями. Просто сядьте и изучите эту доку со своей командой — чем больше глаз ее видели, тем меньше риск того, что по ходу дела вы что-то упустите.
Окей, прочитали гайдлайны — на что еще обратить внимание, чтобы выложить приложение в App Store? Ознакомьтесь с самыми популярными причинами реджектов в магазине. После откройте Google и пробегитесь по статьям с аналогичной тематикой. Изучите «типичные» грабли на берегу, чтобы не пополнить список тех, кто о них споткнулся.
Важный момент на этапе отправки билда: Поделитесь с магазином всей интересующей их информацией. Тут отлично работает правило «больше — лучше». Сделайте так, чтобы тестировщик не рвал на себе волосы от непонимания «Что это такое? Как это тестить? Почему вообще я должен выложить это приложение в App Store?»
Вот тут мы объясняем, как тестить in-app покупки в приложении для сна:
Заполненный блок Review information минимизирует риск того, что проверка пройдет неудачно
Ну и напоследок — какой бы скрупулезной ни была предрелизная подготовка, по ту сторону ревью находятся живые люди, которые часто трактуют правила по-разному. Удача или справедливость — называйте, как хотите — не всегда может оказаться на вашей стороне. Вас могут «одобрить» со 2, 3, 4-го раза — и это абсолютно нормально! Подмечайте детали, о которых спрашивают тестировщики, будьте настойчивы, открыты и любезны. И будет вам релиз!