iOS IAP cordova-plugin-inapppurchase

时间:2016-11-11 17:58:59

标签: cordova ionic-framework app-store cordova-plugins ngcordova

我们现在被困了几个星期。

当我们尝试在App Store中为IAP测试pay()(使用cordova的inapppurchase插件)时,我们一直收到以下错误:

  

RMStore:未知产品ID com.company.appname.myID

我们尝试过每一种方式让它无效。在使用Apple 无用支持进行多次调用后,他们只是继续回复此问题(当我们尝试提交应用时):

  

我们发现您的应用内购买产品展示了一个或多个   在运行iOS 10.1.1的iPad和运行iOS的iPhone上查看错误   10.1.1。

     

IAP无效

具有讽刺意味的是,IAP已经准备好了#34;并且支持表示,对于沙盒测试,IAP购买的状态无关紧要。

它在Play商店中完美运作。

更新(尚未修复): Apple Developer Forums

更新2:可能与此相关:RMStore: invalid product with id myID #181

更新3 - 来自Apple支持:

Nov 22 19:29:57 iPhone itunesstored(iTunesStore)[102]:ISStoreURLOperation:针对网址发送POST请求,服务类型为:0 https://sandbox.itunes.apple.com/WebObjects/MZFinance.woa/wa/inAppCheckDownloadQueue

此日志语句告诉我代码正在调用addTransactionObserver方法。

就像你一样,我已经确认日志中没有fetchSfotwareAddOns调用。

所以在这一点上,问题 - 为什么呼叫没有发生。您的代码是否进行SKProductsRequest调用,或者这应该发生在RMStore框架中。我怀疑必须在框架中进行调用。你有框架的来源 - 如果有的话,是什么触发了日志声明

如果您没有这些来源,我认为您的下一步是联系RMStore开发团队寻求解释。

1 个答案:

答案 0 :(得分:2)

我已经解决了这个问题,这不是RMStore的问题。我向RMStore.m添加了额外的日志记录,并意识到产品列表是空的,所以与产品标识符无关。

您需要在iTunes Connect中拥有“付费应用”合同才能显示您的付费产品。要执行此操作,请转到iTunes Connect主页,然后选择“协议,税务和银行业务”。填写您的联系人,银行和税务信息。提交表格并等待15分钟以便处理合同。

测试的一个好方法是添加免费的耗材产品,这不需要“付费应用”合同。