Получить стоимость подписки от SKPaymentTransaction - PullRequest
0 голосов
/ 12 марта 2019

Мое приложение предлагает подписку в приложении.Когда подписка покупается или возобновляется, приложение уведомляется с помощью SKPaymentTransaction, которая содержит идентификатор продукта в приложении.Я могу запросить этот идентификатор в приложении, чтобы получить купленный SKProduct.Этот продукт может содержать обычную цену, начальную цену (или пробную версию) и одну или несколько скидок (начиная с iOS 12.2).В случае возобновления подписки текущая обычная цена может отличаться от цены, на которую пользователь был подписан в прошлом.

Мой вопрос состоит в том, как определить, какую цену заплатил пользователь:

  • текущая обычная цена;
  • вступительная цена / пробная версия;
  • цена со скидкой;
  • что-то еще, доступное в прошлом для этого пользователя.

1 Ответ

1 голос
/ 13 марта 2019

Вам необходимо сохранить price и introductoryPrice из SKProduct и посмотреть флаг is_in_intro_offer_period в транзакции SKPaymentTransaction, чтобы определить, сколько они заплатили за доступ в течение расчетного периода.

Обратите внимание, что цены SKProduct будут указываться в валюте пользователя, поэтому вы должны также сохранять локаль, если хотите конвертировать все в одну и ту же валюту.

Тот факт, что цена не в квитанции, все еще поражает:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...