当用户购买耗材时,我的SKPaymentTransactionObserver
会收到一个SKPaymentTransaction
数组。然后,应用可以检查transaction.TransactionState
和transaction.Payment.ProductIdentifier
,以验证是否已实际购买 IAP。
但我的应用程序使用它来允许用户从我的 Web 服务下载内容。所以问题是Web 服务如何验证该应用程序是否确实购买了 iap,而不是说它是一个假应用程序只是说它购买了?我需要某种方法来验证服务器上的SKPaymentTransaction
。通过签名或应用商店验证服务。
Windows有一种方法可以在UWP上执行此操作。有没有办法在iOS上做到这一点?
我已经检查了 SKPaymentTransaction, SKPayment 等,但所有这些都没有显示验证方式,或者它们是关于非消耗品的(保存在应用程序的收据中(。
有两种方法可以验证 iOS 可消费的应用内购买。
首先,您可以在应用程序中本地验证收据(请参阅本地验证收据(。但是,它仍然容易开裂。
最安全的方法是执行服务器端验证,方法是将收据发送到服务器,然后将其发送到 Apple(请参阅使用 App Store 验证收据(。