gpt4 book ai didi

ios - 为什么 iOS 上的 Apple AppStore 应用内收据是空的?

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:57:39 24 4
gpt4 key购买 nike

在应用程序中,我需要实现自动续订订阅购买。据我了解文档,我应该在应用程序启动时检查 AppStore 收据,然后用我的服务器验证该收据。在我的代码中,我执行以下操作来检索收据:

NSURL *receiptURL = [[NSBundle mainBundle] appStoreReceiptURL];
NSData *receipt = [NSData dataWithContentsOfURL:receiptURL];

有时 receipt 会变成 nil。例如:

  • 我启动了一个应用程序并进行了购买。之后上面的代码返回非空的receipt
  • 应用通过 Xcode 停止。
  • 下次应用启动时,receipt 为 nil。

我不明白,为什么会这样。 receiptURL 指向带有收据的文件,但是 [NSData dataWithContentsOfURL:receiptURL] 返回 nil。

如果我请求刷新收据,则应用会显示用于输入 Itunes 凭据的对话框。这不好,因为此对话框将在应用启动时出现,这是意外行为。

我做错了什么吗?或者这可能是特定于沙箱的情况?

最佳答案

在生产中总会有一张收据(即使该应用程序是免费的),其中可以包含您的额外购买,以防您购买了某些东西或从已购买的元素中恢复。
在测试环境中,直到您购买收据为 nil,如果您想测试接近生产的案例,您应该首先尝试恢复(现在您将有收据)并执行您需要的操作。

关于ios - 为什么 iOS 上的 Apple AppStore 应用内收据是空的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36036030/

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