我试图在我的应用程序中为我的IAP设置产品请求,但在正确定义请求时遇到问题。代码如下:

let productsRequest: SKProductsRequest = SKProductsRequest(productIdentifiers: self.productId as! Set<String>)

self.productRequest是在itunesConnect中创建的IAP的字符串标识符
它给出了错误
从“String”转换为不相关类型“Set”总是失败
如果不是IAP的标识字符串,我应该向请求传递什么?我运行应用程序,它返回0个产品
编辑:新的完整功能代码:
let productIdentifiers: Set<ProductIdentifier> = ["com.Personal.LiftApp.RemoveGoogleAds"]
        let productsRequest = SKProductsRequest(productIdentifiers: productIdentifiers)
        productsRequest.delegate = self
        productsRequest.start()

最佳答案

出现此错误是因为ProductIdentifier必须是字符串:

typealias ProductIdentifier = String

你应该传递一组字符串:
let productIdentifiers: Set<ProductIdentifier>

所以,你应该打电话给:
productsRequest = SKProductsRequest(productIdentifiers: productIdentifiers)

为了帮助您更好地理解如何制作,请看下面的示例:
let productIdentifiers: Set<ProductIdentifier> = [id_of_the_first_in_app_purchase, id_of_the_second_in_app_purchase]

关于ios - Swift 3中的IAP产品要求?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42628387/

10-11 19:49