Обнаружение отмены IAP - PullRequest
       8

Обнаружение отмены IAP

1 голос
/ 26 февраля 2020

Я, как правило, понимаю проверку квитанции на покупки внутри приложения. Большинство библиотек делают это так же просто, как и вызов метода.

Мне не очень понятно, как работают подписки - в частности, как я могу определить, отменена ли подписка?

Подписки отменено только в интерфейсе Apple iTunes. Как мой сервер должен знать, что подписка была отменена?

Ответы [ 2 ]

2 голосов
/ 26 февраля 2020

Ответ от Джейкоба верен для случая, когда пользователь отключает автоматическое продление своей подписки. Если пользователь запросил возврат у Apple, и они отменили подписку для него. Ваш сервер получит уведомление CANCEL, а квитанция будет содержать поле cancellation_date.

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

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

2 голосов
/ 26 февраля 2020

Из документов Apple:

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

https://developer.apple.com/documentation/storekit/in-app_purchase/subscriptions_and_offers/handling_subscriptions_billing#3221914

...