You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

TestFlight中watchOS端StoreKit 2的Product.products调用无响应问题

StoreKit 2在watchOS TestFlight构建中调用Product.products(for:)无响应

我用同一个类适配iOS和watchOS目标,共用同一代码。上传到TestFlight后,iPhone端能正常获取内购产品,但Apple Watch端的流程完全停滞。

我在代码中加入了日志收集,TestFlight构建的日志输出如下:

do {
    log("1")    // iPhone和Watch均执行到此语句

    let storeProducts = try await Product.products(for: productIDs)

    log("2")    // iPhone执行到此,Watch未执行
    
} catch {
    log("3")    // Watch也未执行到此
}

从日志可见,try await Product.products(for: productIDs)这个调用既不返回结果,也不抛出异常,即使保持ViewController打开数分钟也毫无进展。

目前的情况:

  • 现有上线应用原本使用SwiftyStoreKit,但该库在iOS 16上失效,因此我们为iOS 16和watchOS 9设备迁移至StoreKit 2(旧系统版本仍保留SwiftyStoreKit逻辑)
  • 未在TestFlight验证功能就推送更新风险极高,我想确认这是否是StoreKit 2在watchOS TestFlight环境下无法获取产品的已知问题,但未找到苹果官方或相关论坛的信息
  • 我们也曾尝试用RevenueCat实现购买功能,但在watchOS上出现了诸如收据丢失的奇怪错误
  • 奇怪的是,SwiftyStoreKit在TestFlight的watchOS端仍能正常显示所有购买记录,由此我推测问题出在StoreKit 2本身(SwiftyStoreKit基于StoreKit 1),但这只是猜测,希望有遇到相同问题的开发者能提供相关信息或解决方案。

内容的提问来源于stack exchange,提问作者swtype

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 20:31:34