在IOS应用内购买中,如何检查response.products.count始终为0的原因?
我试图为消费品实施Ios应用程序内购买。我在appstore connect中向我的应用程序添加了2个产品,其中ID类似于:net.company.app.3000和net.company.app.10000。它们都可以出售。在我的代码中,我尝试了以下方法:在IOS应用内购买中,如何检查response.products.count始终为0的原因?,ios,swift,in-app-purchase,Ios,Swift,In App Purchase,我试图为消费品实施Ios应用程序内购买。我在appstore connect中向我的应用程序添加了2个产品,其中ID类似于:net.company.app.3000和net.company.app.10000。它们都可以出售。在我的代码中,我尝试了以下方法: @IBAction func addButtonPushed(_ sender: Any) { let ids = Set(["net.company.app.3000","net.company.app.10000"])
@IBAction func addButtonPushed(_ sender: Any) {
let ids = Set(["net.company.app.3000","net.company.app.10000"])
let r = SKProductsRequest(productIdentifiers: ids)
r.delegate = self
print("r=\(r)")
r.start()
}
及
这里的产品计数总是0。我还提交了一个版本的产品,该版本被拒绝,他们拒绝了,因为购买不起作用。当然,没有拼写错误
现在,我的问题是,我如何获得我的product.count始终为0的原因/响应 您可以强制强制强制转换设置您的SKProduct请求,如下所示吗
let productIDs = Set([
"net.company.app.3000",
"net.company.app.10000",
])
//Force Cast
let request = SKProductsRequest(productIdentifiers: productIDs as! Set<String>)
request.delegate = self
request.start()
让productIDs=Set([
“net.company.app.3000”,
“net.company.app.10000”,
])
//强制铸造
let request=SKProductsRequest(产品标识符:productIDs as!Set)
request.delegate=self
request.start()
如果您的id为true并已添加到AppStore Connect帐户,则该帐户应能正常工作请检查以下几点:
1) In app purchase in target's capabilities?
2) IAP should be enable in provision profile.
3) Also have a look into contract.
4) Try to delete and install again.
我发现,主要问题是帐户所有者的付款帐户设置。因此,在这种情况下,不可能从代码中找到错误。您是否使用沙盒测试仪来测试它?您是否也尝试过不使用Set,而只是执行以下操作:ids=[“net.company.app.3000”,“net.company.app.10000”]?是的,我是一个沙盒用户,现在刚刚尝试不使用Set,它显示了以下错误:无法将“[String]”类型的值转换为预期的参数类型“Set”。除此之外,它过去也能工作,而我从公司的帐户上传了相同的代码。现在,我正在尝试从客户的帐户上传它,并更改包id和产品id。但是,它现在不起作用。检查您的
SKResponse
上的invalidProductIdentifiers
的内容-您的产品标识符可能不正确;您是否已完成App Store Connect中付费应用的所有协议?[“net.company.App.10000”、“net.company.App.3000”]->invalidProductIdentifiers内容。我多次检查拼写。他们是正确的。此外,它不是付费应用程序。该应用程序是免费的,只是有一些消耗品需要购买。@TazwarUtshas您找到解决方案了吗?事实上,我在IAP中也遇到了同样的问题,我已经配置了协议税和银行业务,沙箱测试仪,尝试使用测试仪帐户登录,目标功能中的应用内购买已打开,在配置文件中启用了IAP,所以我多次重新安装应用程序,但我的产品计数仍然是0。我实际上尝试了所有这些。不知道为什么他们不工作。实际上我的代码是好的。我做的代码,上传应用程序通过我的公司帐户在第一次,当时它工作得很好。然后我上传了相同的代码到我的客户帐户,现在它不工作了。
1) In app purchase in target's capabilities?
2) IAP should be enable in provision profile.
3) Also have a look into contract.
4) Try to delete and install again.