Офтоп Олег Сужаев
1 025

Лайфхак: как приложение TJ повторно проходило модерацию App Store в день отклонения

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

В закладки

Все помнят, как до неприличия долго ждали обновленное приложение TJ. Мы тоже ждали. И вот, проснувшись одним солнечным вечером, после ночи разработки меня осенило: все готово, приложение ждет ревью и вот вот появится в App Store, это не могло не радовать.

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

Dear TJournal Limited,
The status for the following app has changed to In Review.

А спустя несколько часов, вместо позитивного статуса Ready for Sale мы получили грусть и боль. Приложение отклонили.

Почти месяц длилась наша битва с App Store Review Team. Приложение отклоняли и отклоняли по одной простой причине: чтобы купить расширенный аккаунт TJ+ нельзя требовать от пользователя авторизацию, но как? Как можно купить расширенный аккаунт без аккаунта? Разными способами мы пытались обойти это ограничение, совсем отчаявшись даже закрыли приложение за экраном авторизации (это означает, что без авторизации вы бы не могли читать TJ), но и это не помогло.

Вот такой экран пользователи бы видели при первом запуске приложения

17.2: Apps that require users to share personal information, such as email address and date of birth, in order to function will be rejected

During further review, your app requires users to register and/or login to access In App Purchases. While we understand the IAP are account-specific, apps cannot require user registration prior to allowing access to but In App Purchases.

Specifically, we noticed the user has to sign up or login to the social media account in order to buy In App Purchases. It would be appropriate to have access to buy In App Purchases in order to be in compliance with the App Store Review Guidelines.

Therefore, your app will not be posted to the App Store at this time.

We hope you will consider making the necessary changes to be in compliance with the App Store Review Guidelines and will resubmit your revised binary.


Best regards,
Lana
App Review Board

Причина отклонения от App Store Review Team

После четвертого review нам назначили звонок и дали понять: пока мы сделаем покупки без авторизации не видать нам приложения в App Store. Как вы могли догадаться, покупки без авторизации мы реализовали: пользователи могут покупать аккаунт TJ+ и читать комментарий без авторизации, а вот чтобы что-то написать или лайкнуть уже будь добр авторизуйся.

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

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

Привет, мы заметили, что вы подали апелляцию, а потом залили новый билд. Мы рады, что вы исправили все ошибки в приложении и проверим новый билд в кротчайшие сроки.

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

Ложка дёгтя

Ну а теперь то, почему меня сейчас закидают помидорами: лайфхак больше не работает.

Почему? Не знаем.

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

Материал опубликован пользователем. Нажмите кнопку «Написать», чтобы рассказать свою историю.

Написать
{ "author_name": "Олег Сужаев", "author_type": "self", "tags": [], "comments": 16, "likes": 44, "favorites": 2, "is_advertisement": false, "subsite_label": "flood", "id": 17199, "is_wide": false, "is_ugc": true, "date": "Tue, 10 Nov 2015 19:46:13 +0300" }
Комментарии

Электронный рак

8

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

Офтоп
дискуссии в сообществе доступны только владельцам клубного аккаунта
С клубным аккаунтом вы сможете
создавать записи и вести дискуссии в закрытых сообществах
наслаждаться нашим сайтом без рекламы
помочь проекту и почувствовать себя лучше
Купить за 75₽

Прямой эфир

[ { "id": 1, "label": "100%×150_Branding_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox_method": "createAdaptive", "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "ezfl" } } }, { "id": 2, "label": "1200х400", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "ezfn" } } }, { "id": 3, "label": "240х200 _ТГБ_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "i", "ps": "cndo", "p2": "fizc" } } }, { "id": 4, "label": "240х200_mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "i", "ps": "cndo", "p2": "flbq" } } }, { "id": 5, "label": "300x500_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "ezfk" } } }, { "id": 6, "disable": true, "label": "1180х250_Interpool_баннер над комментариями_Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "clmf", "p2": "ffyh" } } }, { "id": 7, "label": "Article Footer 100%_desktop_mobile", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byswn", "p2": "fjxb" } } }, { "id": 8, "label": "Fullscreen Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "fjoh" } } }, { "id": 9, "label": "Fullscreen Mobile", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "fjog" } } }, { "id": 10, "disable": true, "label": "Native Partner Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyb" } } }, { "id": 11, "disable": true, "label": "Native Partner Mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyc" } } }, { "id": 12, "label": "Кнопка в шапке", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "fdhx" } } }, { "id": 13, "label": "DM InPage Video PartnerCode", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox_method": "createAdaptive", "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "cndo", "p2": "flvn" } } }, { "id": 14, "label": "Yandex context video banner", "provider": "yandex", "yandex": { "block_id": "VI-223677-0", "render_to": "inpage_VI-223677-0-130073047", "adfox_url": "//ads.adfox.ru/228129/getCode?pp=h&ps=cndo&p2=fpjw&puid1=&puid2=&puid3=&puid4=&puid8=&puid9=&puid10=&puid21=&puid22=&puid31=&puid32=&puid33=&fmt=1&dl={REFERER}&pr=" } }, { "id": 15, "label": "Плашка на главной", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byudv", "p2": "ftjf" } } }, { "id": 16, "label": "Кнопка в шапке мобайл", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "ccydt", "p2": "ftwx" } } }, { "id": 17, "label": "Stratum Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "fzvb" } } }, { "id": 18, "label": "Stratum Mobile", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "fzvc" } } } ]
Узнавайте важные новости первыми
Подписаться на push-уведомления