Если я протираю данные в своем приложении, перезагрузите некоторые управляемые IAP, которые, как я знаю, уже принадлежат учетной записи, iOS дает мне родной «вы уверены, что хотите выкупить этот товар? не будет заряжен ". Это как и ожидалось.квитанция iOS не включает в себя выкупленные транзакции
Когда покупка вернется в мое приложение, я получаю квитанцию с [[NSBundle mainBundle] appStoreReceiptURL]
. Затем я пытаюсь проверить транзакцию транзакций SKPaymentTransaction с квитанцией через мой сервер.
Однако идентификатор транзакции квитанции для этого IAP, потому что я уже давно его купил, это не то же самое, что SKPaymentTransaction.
Как я могу проверить, что это действительный выкуп? Могу ли я получить подписанную квитанцию для этого выкупа?
это хорошая информация. вы делаете вывод, что есть квитанция для транзакции, но как я могу ее получить? transactionReceipt в SKPaymentTransaction устарел. – tenpn
В локальной квитанции типа iOS 7+ есть как квитанции приложения _and_ IAP, объединенные внутри. Информация для проверки на местную квитанцию - https://developer.apple.com/library/prerelease/ios/releasenotes/General/ValidateAppStoreReceipt/Chapters/ValidateLocally.html - (и различные сторонние реализации) содержит сведения для повторяя покупки. –