我在 Mac OS 应用程序中测试应用内购买时遇到了不愉快的情况:
我在 iTunes Connect 中创建了一个新的测试用户,用这个用户订阅了新版本的收据,然后在沙盒模式下使用这个测试用户帐户在我的应用程序商店购买了一些产品,最后得到状态 SKPaymentTransactionStatePurchased
在我的产品交易的 updatedTransactions
方法中。
看起来一切正常。每个产品的产品 ID 均有效,所有产品在 iTunes Connect 中都处于 In Review
状态。这样我就可以成功购买我所有的产品。
但它只能工作一次。
在我的商店里,我有消耗品和非消耗品。
当我在我的应用程序商店中重置购买并尝试使用相同的测试用户帐户再次购买某些产品时。
对于非消耗品,我必须获得 SKPaymentTransactionStateRestored
状态,对于消耗品,我必须再次获得 SKPaymentTransactionStatePurchased
。
但总而言之,我在 updatedTransactions
方法中收到了 code 0
错误。
有了这个测试用户,我再也不能买任何东西了。
如果我创建新的测试用户并重复我的第一部分操作,我可以再次成功购买商店中的所有产品,但同样只能购买一次。试图解决这个问题超过一天。因此,如果有人有类似情况或对解决方案有任何想法,将很高兴听到。
最佳答案
问题出在 Apple 方面。使用新 bundle 和应用 ID 注册新应用后,尽管代码相同,但应用内购买一切正常。我对这种情况的看法是,当 Mac OS 中没有应用内购买时,我的第一个应用版本已经注册,当我将其添加到新版本的应用程序时,出现了一些冲突。
关于objective-c - 苹果操作系统 : In-App Purchase Error Code 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8817677/