【发布时间】:2021-06-22 17:38:35
【问题描述】:
我在 App Store Connect 帐户中进行了 3 次应用内购买(不可续订的订阅),均已成功在代码中获得批准和检索
然后我又添加了一个免费的不可续订的应用内购买,提交到应用商店新的应用内购买被批准,所有协议都有效,税务和银行信息是好的,代码中的产品标识符是与 App Store 中的相同连接
我在 SKProductsRequest 中请求所有四个产品但在 productsRequest(_ request: SKProductsRequest, didReceive response: SKProductsResponse) 我收到三个旧的应用内购买 SKProducts,但在 invalidProductIdentifiers 中收到新的应用内购买的产品标识符
func fetchProducts() {
let request = SKProductsRequest(productIdentifiers: ["mentalmind.kz.free", "mentalmind.kz.threemonth", "mentalmind.kz.sixmonth", "mentalmind.kz.oneyear"])
request.delegate = self
request.start()
}
func productsRequest(_ request: SKProductsRequest, didReceive response: SKProductsResponse) {
print("received products: \(response.products.map({ $0.productIdentifier }))")
print("invalid product ids: \(response.invalidProductIdentifiers)")
DispatchQueue.main.async {
self.products = response.products
}
}
控制台输出:
received products: ["mentalmind.kz.oneyear", "mentalmind.kz.sixmonth", "mentalmind.kz.threemonth"]
invalid product ids: ["mentalmind.kz.free"]
是苹果的错,还是你有什么代码推荐给我?
【问题讨论】:
-
没有人知道,因为你没有显示一行代码。
-
@ElTomato ,添加代码和截图
-
据我所知,
StoreKit无法识别您所有产品的唯一可能是您在应用程序中指定的产品标识符与您在 iTunes Connect 上实际注册的产品标识符不同。另一个小可能性是您没有等待足够长的时间,直到他们的服务器传播数据。 -
@ElTomato ,是的,我也是这么想的,但是我从 App Store Connect 复制粘贴了标识符,并在一个多星期前添加了这个应用内购买:/
标签: swift in-app-purchase skproduct