Я пытаюсь проверить, что срок действия автоматически возобновляемой покупки в приложении не истек на стороне сервера (не на устройстве).
Я использую Apple Grand Unified Receipt (транзакции в стиле iOS 7). Ответ, возвращаемый Apple, содержит элементы in_app
и latest_receipt_info
с массивом квитанций. Элемент in_app
JSON содержит МЕНЬШЕ квитанций, чем latest_receipt_info
. Я ожидал, что оба элемента будут содержать один и тот же номер или квитанции.
Кроме того, я ожидал, что элемент in_app
будет содержать ВСЕ квитанции. Однако похоже, что latest_receipt_info
фактически содержит все квитанции. В документации Apple предлагается использовать in_app
для поиска последней квитанции.
Я удивлен, увидев latest_receipt_info
, потому что в документации Apple указано, что этот элемент «возвращается только для квитанций о транзакциях в стиле iOS 6 для автоматически возобновляемых подписок». (не для iOS 7+).
Какой элемент JSON мне следует перебрать, чтобы найти последнюю квитанцию для автоматически возобновляемых транзакций в стиле iOS 7: in_app
или latest_receipt_info
?
latest_receipt_info
. Большое спасибо за ответ! Потратил много времени на отладку этого и до сих пор в недоумении :) Всегда ли Apple отправляет вам latest_receipt_info? Вот что я всегда получаю от их услуг: gist.github.com/vasiliyb/23b5ac1fb36c6fd50006 - person Cmag   schedule 02.10.2014latest_receipt_info
иlatest_receipt
. Я используюlatest_receipt_info
, чтобы проверить, возобновилось ли автоматическое продление (или срок его действия истек). И я хранюlatest_receipt
для дальнейшего использования. Я отправлю сохраненныйlatest_receipt
в Apple, когда в следующий раз проверю возможность продления. - person Chris   schedule 02.10.2014latest_receipt
от Apple? Не думаю, что я очень хорошо понимаю процесс :( Итак, если это первая покупка, и у вас нет latest_receipt, скажем, mongo, тогда пересылайте строку, которую вы получили с телефона, в противном случае отправьте сохраненный latest_receipt и проверьте с помощью строка, которую вам отправили? - person Cmag   schedule 02.10.2014latest_receipt
. Я буду хранитьlatest_receipt
. Затем, когда происходит автоматическое продление (для меня подписка составляет 1 месяц), я отправляю свою сохраненную квитанцию в Apple, чтобы узнать, произошло ли автоматическое продление. Я думаю, что я хотел всегда стараться отправлять в Apple самую последнюю квитанцию, о которой я знаю, и, надеюсь, тем самым Apple всегда будет отправлять мне самую последнююlatest_receipt_info
. - person Chris   schedule 02.10.2014latest_receipt
всегда отличается в ответе Apple JSON? Большой вопрос ... как мне проверить, действительна ли квитанция. Ужасный опыт. - person Cmag   schedule 03.10.2014latest_receipt
от Apple отличается от того, что мне прислал телефон. Совершенно новая покупка в песочнице ... как, черт возьми, я могу заставить это работать :( - person Cmag   schedule 07.10.2014