我正在将应用内购买添加到我的应用中。 我对此有些疑惑。如何处理? 我们是否需要在这个状态下实现自己,否则苹果公司会处理这个问题?如何处理SKPaymentTransactionStateDeferred?
如果我们应该实施手段如何在这里处理? 如何使用沙箱测试仪帐户进行测试? 有人告诉我清楚。提前致谢。
我正在将应用内购买添加到我的应用中。 我对此有些疑惑。如何处理? 我们是否需要在这个状态下实现自己,否则苹果公司会处理这个问题?如何处理SKPaymentTransactionStateDeferred?
如果我们应该实施手段如何在这里处理? 如何使用沙箱测试仪帐户进行测试? 有人告诉我清楚。提前致谢。
据苹果StoreKit文件,延缓状态是: -
该交易是在排队,但其最终地位正在等待外部动作,如询问购买。更新您的用户界面以显示延迟状态,并等待另一个指示最终状态的回调。
我们得到的交易延缓状态,如果用户是苹果家人分享&家族管理员启用问买的一部分。
当儿童用户尝试购买应用内商品时,会向父用户发送请求以进行审批。家长用户在Ask to Buy流程开始后有24小时批准或取消孩子的购买。如果家长未能在24小时内回复,“Ask to Buy”请求将从iTunes Store服务器中删除,并且您的应用的观察者不会收到任何通知。
您应该更新您的用户界面以反映这种延迟状态。避免在等待交易更新时阻止您的用户界面或游戏玩法。
在沙盒环境,我们可以通过SKMutablePayment像测试延缓状态: -
let product = SKMutablePayment(product: productDetails)
product.simulatesAskToBuyInSandbox = true //Enable to test deferred state.
SKPaymentQueue.defaultQueue().addPayment(product)
有关信息:
的iOS 8引入了询问购买,这让父母批准儿童发起的任何购买交易,包括App Store上的应用或应用内购买。当孩子要求购买时,Ask to Buy会通过发送Deferred状态表明该应用正在等待父母对该购买的批准。