Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/103.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 接受零产品的应用内购买_Ios_Swift_In App Purchase_App Store Connect_Sandbox - Fatal编程技术网

Ios 接受零产品的应用内购买

Ios 接受零产品的应用内购买,ios,swift,in-app-purchase,app-store-connect,sandbox,Ios,Swift,In App Purchase,App Store Connect,Sandbox,我在iTunes connect中创建了一个可消费的应用内购买,如下图所示 之后,我创建了一个沙盒用户,并验证了appid 当我尝试使用以下代码检查产品时 func requestProducts(forIds ids: Set<String>) { productRequest.cancel() productRequest = SKProductsRequest(productIdentifiers: "com.iapcourse.meal") prod

我在iTunes connect中创建了一个可消费的应用内购买,如下图所示

之后,我创建了一个沙盒用户,并验证了appid

当我尝试使用以下代码检查产品时

func requestProducts(forIds ids: Set<String>)
{
    productRequest.cancel()
    productRequest = SKProductsRequest(productIdentifiers: "com.iapcourse.meal")
    productRequest.delegate = self
    productRequest.start()
}

func productsRequest(_ request: SKProductsRequest, didReceive response: SKProductsResponse) {
    self.products = response.products
    print(products.count)
    if products.count == 0
    {
        requestProducts(forIds: "com.iapcourse.meal")
    }
    else {
        delegate?.iapProductsLoaded()
    }
}
func请求产品(forIds-id:Set)
{
productRequest.cancel()
productRequest=SKProductsRequest(产品标识符:“com.iapcourse.mean”)
productRequest.delegate=self
productRequest.start()
}
func productsRequest(uRequest:SKProductsRequest,didReceive response:SKProductsResponse){
self.products=response.products
打印(产品计数)
如果products.count==0
{
请求产品(forid:“com.iapcourse.mean”)
}
否则{
委托?.iapProductsLoaded()
}
}

我从委托方法收到零乘积。

从我发现的情况来看,元数据并不重要。重要的问题是签署用户协议和税务论坛

应用内购买的状态需要处于“准备提交”阶段,然后才能在沙箱中进行测试。一个常见的错误是预览图像,为了测试,你可以上传任何你想要的东西,这样元数据就完整了。此外,您还需要确保签署了“付费应用程序”协议——App Store connect中的任何地方都不清楚这是必需的,因此有时会被忽略


我写了一篇非常好的文章,其中列出了您需要配置的所有内容:

元数据缺失,请先完成它的数据。它不起作用。请确保您使用相同的帐户登录xcode。实际上,我缺失的是付费应用程序协议签名