gpt4 book ai didi

ios - SKProductsRequest 在生产环境中不返回任何产品

转载 作者:行者123 更新时间:2023-11-29 11:31:09 26 4
gpt4 key购买 nike

我有一个使用应用内购买的 iOS 应用程序。

我已经设置好了环境:

  • 设置协议(protocol)税务和银行部分,
  • 创建了 iap 产品
  • 在功能选项卡中打开“应用内购买”
  • 实现我的代码以检索产品列表并执行购买验证收据服务器端

我还使用沙盒环境对所有产品进行了测试,并且所有产品都按预期工作:商店正确收到了产品 list ,我可以购买验证相应收据的产品。

我还使用 testflight 测试了该应用程序,它会自动为所有测试人员创建一个沙箱用户,一切正常

我向 Apple store 提交了我的申请,修改已通过,因此目前该申请处于“等待开发者发布”状态,所有产品均已获得批准:

enter image description here

为了尝试实际购买(使用真实的信用卡),我使用 iTunes connect 生成了促销代码,并在我的 iPhone 上安装了该应用程序。但是,使用以这种方式下载的应用程序时,我在应用程序的 IAP 部分看不到任何产品。应用程序似乎下载了一个空的或无效的产品列表。 相同的应用程序版本与 Testflight 配合良好。 IAP 是否允许使用促销代码?为什么我只能使用沙盒用户才能下载正确的产品列表?由于我无法调试我的应用程序,我该如何找到问题所在?

编辑

我找到了 here以下几点关于无效的产品标识符问题:

  1. 您是否为新的 App ID 生成并安装了新的配置文件?
  2. 您是否已将您的项目配置为使用这个新的配置文件进行代码签名?

我已经生成了使用 XCode 自动管理签名的 App Id。

enter image description here

在开发者门户中,我有这种形式的 App ID

enter image description here

目前,我没有生成任何配置文件,事实上我无法在开发人员门户的“Provisionig Profile”部分找到它。而且,正如您在上图中所见,在 Xcode 中,我将“XCode Managed Profile”视为供应配置文件:

enter image description here

这是个问题吗?如果是,我该如何解决?手动生成新的配置文件并将其安装在我的机器上是否足够?我应该为我的应用程序上传一个新版本吗?

如果配置文件丢失,为什么我的应用程序可以使用沙盒用户和 Testflight 环境正常工作?

最佳答案

问题是,实际上,在应用程序处于“准备销售”状态之前,您无法下载产品列表。如应用内购买常见问题解答中所述:

应用程序获得批准后,开发者还必须批准该应用程序才能发布到 App Store。批准后,应用程序 ID 将被激活到 App Store。应用程序内也需要同样的激活purchase identifiers and can only place once the application is activated. 在某些情况下,In-App Purchase identifiers 的激活可能会在应用程序激活后最多滞后 48 小时。如果开发者不批准将生产应用程序发布到 App Store,则不会激活任何新的应用程序内购买标识符。当开发人员想要在 App Store 上激活应用程序之前验证应用程序时,就会出现这个问题。如果希望测试新项目的应用程序内购买过程,则必须将应用程序激活到 App Store。这只是相应应用程序提交中新的应用程序内购买标识符的问题。一旦这些应用内购买标识符被激活,提交的应用程序更新将发现这些应用内购买标识符被验证,即使更新没有被激活。

因此,如果您的应用程序处于“待开发者发布”状态,您将无法获得通过促销代码下载的应用程序的产品列表。应用在商店发布后,产品列表就会正确显示。

问题与配置文件相关:自动生成的配置文件对于提交具有应用内购买功能的应用程序是有效的。

关于ios - SKProductsRequest 在生产环境中不返回任何产品,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53477564/

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