Как внедрить и протестировать бесплатную пробную версию на iOS при покупке приложения в Sandbox? Как проверить информацию о потоке и пробной версии через квитанции Apple?

Я хочу создать пробный период ( 1 неделя) для моей 1-месячной подписки AR в приложении покупки приложений через iTunes Connect. Вопрос в том, как проверить это в песочнице и получить точную информацию в квитанциях Apple, которая указывает на разницу в статусе между пробным периодом и платной подпиской? Спасибо!

3 ответа

Для продуктов внутри приложения с бесплатными пробными версиями StoreKit на стороне клиента выдает две квитанции в стиле iOS7 в разделе in_app -

  1. Когда пользователь нажимает кнопку "Купить", начинается бесплатная пробная версия. Пользователь не платит в это время. Квитанция, отправленная на сервер для проверки, будет иметь:

      expires_date_ms - purchase_date_ms = Number of Free trial days.
    
  2. Когда дни пробной версии истекли и пользователь не выключил автовозобновление с экрана "Управление подпиской", выдается другая квитанция, и на этот раз с пользователя взимается плата. Выданная квитанция будет иметь

      expires_date_ms - purchase_date_ms = Term Length
    

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

Я сделал пробный платеж в производственном аккаунте и получил квитанцию ​​из магазина приложений. Эта квитанция включила поле "is_trial_period" как "true". Но после пробного периода я получаю квитанцию ​​с реальным счетом, и у нее нет пробных полей.

Я пишу логику как:

  • Если квитанция после проверки имеет поле "is_trial_period" и имеет значение true - это пробная квитанция
  • Если в полях квитанции "original_transaction_id"!= "Action_id" - это реальный счет, я нахожу оригинальную транзакцию в своей собственной БД и возобновляю ее.

Но в документации AppStore нет той же информации о пробном поле. Песочница не делает это поле

Сначала вам нужно создать test user from your iTunes account и зарегистрируйте свое приложение для in app purchase, Затем вы можете использовать своего тестового пользователя для покупки подписки. Здесь Apple предоставила какое-то средство, например, ваша 1-месячная подписка будет эквивалентна 5 минутам, а 3 - 15 минутам, и так далее. Кроме того, если вы используете его в качестве автообновления при покупке приложения, оно будет обновляться в 3–4 раза без исправления, как я тестировал.

Другие вопросы по тегам