首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何处理SKPaymentTransactionStateDeferred?

如何处理SKPaymentTransactionStateDeferred?
EN

Stack Overflow用户
提问于 2017-02-10 06:06:14
回答 1查看 2.3K关注 0票数 7

我在我的应用程序中添加了In购买。我对此有一些怀疑。

如何处理SKPaymentTransactionStateDeferred?我们是否需要在这个州实施自己,还是苹果会处理这个问题?

如果我们要实施的手段,在这里如何处理?如何使用沙箱测试员帐户进行测试?任何人都能清楚地告诉我。提前谢谢。

EN

Stack Overflow用户

发布于 2017-02-12 17:54:25

根据苹果的StoreKit文档,延迟状态是:

事务在队列中,但它的最终状态是挂起的外部操作,例如要求购买。更新您的UI以显示延迟状态,并等待另一个指示最终状态的回调。

我们得到事务延迟状态,如果用户是苹果家族共享的一部分&支持家庭管理的请求购买

当子用户试图购买应用程序内的产品时,会向父用户发送请求以供其批准。在请求购买过程开始后,父用户有24小时的时间批准或取消其子女的购买。如果父程序在24小时内无法响应,则从iTunes商店服务器中删除“请求购买”请求,并且应用程序的观察者不会收到任何通知。

您应该更新UI以反映这种延迟状态。在等待事务更新时,避免阻塞您的UI或游戏。

Sandbox环境中,我们可以使用SKMutablePayment来测试延迟状态:-

代码语言:javascript
复制
let product = SKMutablePayment(product: productDetails)
product.simulatesAskToBuyInSandbox = true //Enable to test deferred state.
SKPaymentQueue.defaultQueue().addPayment(product)

信息:

iOS 8引入了Ask to Buy,允许家长批准任何由孩子发起的购买,包括应用程序商店中的应用程序或应用程序内的购买。当一个孩子请求购买时,通过发送延迟状态,requests将指示该应用程序正在等待家长的批准。

票数 8
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42152560

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档