gpt4 book ai didi

ios - 为什么 SKProductsRequest 需要产品标识符?

转载 作者:行者123 更新时间:2023-11-28 19:58:46 26 4
gpt4 key购买 nike

我正在尝试实现应用内购买。

我已经在 iTunes Connect 中注册了一些应用内购买。我认为一个应用程序能够计算出应用程序内购买就足够了。但是 SKProductsRequest 应该使用产品 ID 进行初始化。

[[SKProductsRequest alloc] initWithProductIdentifiers:[NSSet setWithArray:productIdentifiers]];

SKProductRequest 在与 Apple 服务器通信时,即使没有通过 productIdentifiers 初始化,也可以知道应用内购买的名称、价格和产品 ID。对吧?

所以,我不明白为什么 SKProductsRequest 需要产品 ID。我可以在没有产品 ID 的情况下使用它从 Apple 服务器检索应用内购买内容吗?

最佳答案

您需要向 initWithProductIdentifiers 调用提供一组有效的产品标识符,因为这是 API 指定的内容。

To use an SKProductsRequest object, you initialize it with a list of product identifier strings, attach a delegate, and then call the request’s start method. When the request completes, your delegate receives an SKProductsResponse object.

为什么 API 是这样设计的是一个意见问题(除了 Apple 的人,他们知道他们为什么这样设计)。我的观点是,通过要求应用程序提交产品标识符集,可以避免在以下情况下可能出现的问题:

  1. 发布了支持应用内购买的应用
  2. 发布后,新的应用内购买被添加到 iTunesConnect 并获得批准
  3. 该应用会显示一个购买界面,该界面会自动显示所有批准的应用内购买
  4. 用户购买了新产品,但应用无法完成此次购买,因为它不知道购买的是什么(应用在产品定义之前发布)
  5. 用户向 Apple 投诉,Apple 退款是因为应用没有提供内容/功能,或者用户很生气,因为他们没有得到他们的内容/功能,但没有投诉并获得退款,但使用体验很差-应用购买

关于ios - 为什么 SKProductsRequest 需要产品标识符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25103696/

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