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

SwiftUI本地测试中跨设备Restore Purchases无响应问题咨询

SwiftUI内购跨设备恢复无响应问题原因分析
  • 沙盒环境的设备隔离特性:本地测试用的App Store沙盒和正式环境不同——iPhone上完成的沙盒内购记录,默认不会同步到同账号的Mac/iPad沙盒里。沙盒的内购数据是设备独立的,和你用iCloud同步的App业务数据完全是两回事,iCloud同步不代表沙盒内购记录能跨设备共享。
  • 恢复逻辑的代码疏漏:检查你调用SKPaymentQueue.restoreCompletedTransactions()后的回调处理,是不是只处理了当前设备本地的交易记录?比如在paymentQueue(_:updatedTransactions:)里,有没有错误过滤掉了苹果服务器返回的跨设备沙盒订单,或者没正确处理恢复成功的回调逻辑。
  • 沙盒账号的临时设备绑定:沙盒测试时,账号首次在某设备做内购后,可能会临时把交易记录和该设备绑定,其他设备用同账号恢复时,沙盒服务器不会返回这部分跨设备的交易数据,这是沙盒环境的常见限制,正式环境不会有这个问题。
  • 混淆了iCloud同步与内购恢复:你说的内容通过iCloud同步,这只是App自己的业务数据同步,和内购恢复没关系。内购恢复是直接向苹果服务器拉取账号的已购记录,不是从iCloud读你存的数据,所以iCloud正常同步不代表沙盒内购能跨设备恢复。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.03 13:19:50