StoreKit 2报错:Type 'Product' has no member 'request' 求助
问题原因及解决办法
原因
StoreKit 2中,Product类并没有名为request的静态方法,你写的Product.request(with:)是旧版StoreKit(StoreKit 1)的API用法,StoreKit 2已经更新了产品获取的接口。
修正后的代码
将Product.request(with:)替换为StoreKit 2的正确异步方法Product.products(for:),修改后的代码如下:
import StoreKit import SwiftUI class Store: ObservableObject { func requestProducts() async { do { let storeProducts = try await Product.products(for: ["com.v6"]) // 可在此添加获取产品后的处理逻辑,比如更新UI print("获取到的产品:\(storeProducts)") } catch { print("请求产品失败:\(error)") } } }
额外注意事项
- 确保项目部署目标至少为iOS 15.0、macOS 12.0、watchOS 8.0或tvOS 15.0,StoreKit 2仅支持这些及以上版本的系统。
- 确认App Store Connect中已正确配置对应的内购产品ID(如示例中的
com.v6),否则会返回空产品列表。
内容的提问来源于stack exchange,提问作者Ori C.
相关产品推荐
相关产品推荐

