gpt4 book ai didi

iphone - 在 App Purchase 用户取消 tx 而应用程序在后台 : tx state stays on purchasing

转载 作者:可可西里 更新时间:2023-11-01 03:34:01 29 4
gpt4 key购买 nike

当应用程序处于后台且用户尚未登录商店时,用户在应用程序购买(沙盒环境)中取消时我有一些奇怪的行为:

过程如下:

  • 用户未登录/App Id 未在“设置”>“商店”中设置
  • 用户点击购买按钮。这会调用 [[SKPaymentQueue defaultQueue] addPayment:payment];
  • 用户立即按下主页按钮(应用进入后台)
  • 出现要求确认购买的 Storekit 弹出窗口。用户取消
  • 应用程序再次激活并期望收到 - (void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions,但没有收到。 TX仍在州采购中。

如果测试用户已经登录到商店,这个过程是不同的。在这种情况下,上述过程将按预期工作。

补充说明:经过上述步骤,我实际上又购买了一个应用内商品(包括登录应用商店)。在此之后,我将应用程序发送到后台并重新激活它,它将处理以前丢失的取消交易。

结论:用户在应用程序处于后台且未登录商店时取消付款 tx 会导致 storekit 回调的延迟传递。交付是在用户实际登录应用商店并通过重新激活应用触发 PaymentQueue 流程后完成的。

这种行为似乎是错误的,如果在真实环境中确实如此,我可能会认为这是一个 Storekit 错误。是否有人经历过相同的行为或者可以指出一些东西来防止 tx 在购买状态下“挂起”?

谢谢,马库斯

最佳答案

我不认为您可以指望 Store Kit 的任何东西。与其在按下“购买”按钮后“期待地等待”交易排队,不如继续您的业务。当您收到通知有交易(可能是明天)时处理它们。我相信文档中对此有评论——您的应用程序应该在启动时注册 SK 通知,并且应该期望随时收到它们。因此,当涉及到 Store Kit 时,不要在您的应用程序中构建任何“状态”意识。只需在交易到达时对其进行处理。

关于iphone - 在 App Purchase 用户取消 tx 而应用程序在后台 : tx state stays on purchasing,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6311116/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com