Я хочу создать пробный период (1 неделя) для моей подписки AR на 1 месяц в приложении для покупки приложений через iTunes Connect. Вопрос в том, как протестировать его в песочнице и иметь точную информацию в квитанциях Apple, которая указывает на разницу в статусе между пробным периодом и платной подпиской? Спасибо!
Как внедрить и протестировать бесплатную пробную версию на iOS при покупке приложения в песочнице? Как проверить информацию о потоке и пробной версии с помощью квитанций Apple?
Ответы (3)
Для продуктов в приложении с бесплатными пробными версиями StoreKit на стороне клиента выдает две квитанции в стиле iOS7 в разделе in_app:
Когда пользователь нажимает «Купить», начинается бесплатная пробная версия. В настоящее время с пользователя не взимается плата. Квитанция, отправленная на сервер для проверки, будет иметь:
expires_date_ms - purchase_date_ms = Number of Free trial days.
По истечении бесплатных пробных дней и если пользователь не выключил автоматическое продление на экране «Управление подпиской», выдается еще одна квитанция, и на этот раз с пользователя взимается плата. Выданная квитанция будет иметь
expires_date_ms - purchase_date_ms = Term Length
Если пользователь отключил автообновление до истечения бесплатного пробного периода, сервер должен обнаружить это и отключить подписку для пользователя.
Я сделал пробный платеж в производственном аккаунте и получил квитанцию от магазина приложений. В этой квитанции поле "is_trial_period" указано как "истина". Но после пробного периода я получаю квитанцию с реальным счетом, и в нем нет пробных полей.
Я пишу логику как:
- Если в чеке есть поле "is_trial_period" после проверки и оно верно - это пробный чек
- Если поля квитанции "original_transaction_id" != "transaction_id" - это реальный счет, я нахожу исходную транзакцию в своей собственной БД и обновляю ее.
Но в документации магазина приложений нет такой же информации о пробном поле. Песочница не делает это поле.
Сначала вам нужно создать test user from your iTunes account
и зарегистрировать свое приложение для in app purchase
. Затем вы можете использовать своего тестового пользователя для покупки подписки. Здесь Apple предоставила некоторые возможности, например, ваша подписка на 1 месяц будет эквивалентна 5 минутам, а 3 — примерно на 15 минут и так далее. Кроме того, если вы используете его как автоматическое продление при покупке приложения, оно будет продлеваться от 3 до 4 раз, что не исправлено, как я тестировал.