代码之家  ›  专栏  ›  技术社区  ›  Andrea Gorrieri

skproductsrequest在生产环境中不返回任何产品

  •  1
  • Andrea Gorrieri  · 技术社区  · 6 年前

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

    我已经设置了环境:

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

    我还使用沙盒环境测试了所有产品,并按预期工作:商店正确接收了产品列表,我可以购买验证相应收据的产品。

    我还使用 testfirght对应用程序进行了测试,它自动为所有测试人员创建一个沙盒用户,并且 all按预期工作。

    我向苹果商店提交了我的申请,修订版已通过,因此在应用程序处于“ Pending Developer Release ”状态时,所有产品都已获得批准:

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

    编辑

    我在这里找到了

    1. 是否为新的应用程序ID生成并安装了新的配置配置文件?
    2. 是否已使用此新设置配置文件将项目配置为代码签名?

    我已经用xcode自动生成了管理签名的app id。

    在开发人员门户中,我有此表单中的应用程序ID

    目前,我还没有生成任何配置文件,事实上,在开发人员门户的“provisionig profile”部分找不到它。如上图所示,在Xcode中,我将“Xcode托管配置文件”视为配置配置配置文件:

    这是个问题吗?如果是,我应该如何修复它?是否足以手动生成新的配置文件并将其安装到我的计算机上?我应该为我的应用程序上传一个新版本吗?

    如果缺少配置配置文件,为什么我的应用程序使用沙盒用户和TestFlight环境正常工作?

    提前感谢您离子,

  • 创建IAP产品
  • 打开“功能”选项卡中的“应用内购买”
  • 实现了我的代码以检索产品列表并执行采购验证接收服务器端
  • 我还使用沙盒环境测试了所有产品,并按预期工作:商店正确接收了产品列表,我可以购买验证相应收据的产品。

    我还使用 试飞 它自动为所有测试人员创建一个沙盒用户 一切按预期进行 .

    我向苹果商店提交了我的申请,修订版已经通过,所以现在申请已经进入 挂起的开发人员版本 “状态,所有产品都已批准:

    enter image description here

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

    编辑

    我发现了 here 以下是关于无效产品标识符问题的要点:

    1. 是否为新的应用程序ID生成并安装了新的配置配置文件?
    2. 是否已使用此新设置配置文件将项目配置为代码签名?

    我已经用xcode自动生成了管理签名的app id。

    enter image description here

    在开发人员门户中,我有此表单中的应用程序ID

    enter image description here

    目前,我还没有生成任何配置文件,事实上,在开发人员门户的“provisionig profile”部分找不到它。如上图所示,在xcode中,我将“xcode托管配置文件”视为配置配置配置文件:

    enter image description here

    这是个问题吗?如果是,我应该如何修复它?是否足以手动生成新的配置文件并将其安装到我的计算机上?我应该为我的应用程序上传一个新版本吗?

    如果缺少配置配置文件,为什么我的应用程序使用沙盒用户和TestFlight环境正常工作?

    提前谢谢你

    1 回复  |  直到 6 年前
        1
  •  0
  •   Andrea Gorrieri    6 年前

    问题是,实际上,在应用程序位于 待售 “国家”。如应用程序内购买常见问题解答中所述:

    批准应用程序后,开发人员还必须批准应用程序以发布到应用程序商店。批准后,应用程序ID将激活到应用程序商店。应用程序内购买标识符需要相同的激活,并且只有在应用程序激活后才能进行激活。在某些情况下,应用程序内购买标识符的激活可能会延迟到应用程序激活后48小时。 如果开发人员不批准将生产应用程序发布到应用程序商店,则不会激活任何新的应用程序内购买标识符。当开发人员希望在应用程序商店中激活应用程序之前验证应用程序时,这是一个问题。如果想要测试新项目的应用内购买流程,则必须将应用程序激活到应用商店。这只是应用程序提交中新的应用程序内购买标识符的问题。一旦这些应用内购买标识符被激活,对提交的应用程序更新将发现这些应用内购买标识符被验证,即使更新没有被激活。

    所以如果你的申请是在 挂起的开发人员版本 “状态,您无法通过促销代码下载带有应用程序的产品列表。 一旦应用程序在商店发布,产品列表就会正确显示。

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

    推荐文章