StoreKit 2自动续期内购:如何通过TestFlight用沙箱ID测试?
TestFlight测试自动续期订阅内购的可行方案
TestFlight完全支持测试自动续期订阅内购,无需测试员依赖Mac或本地Xcode连接,你之前遇到的提示属于表述误导,以下是具体实现步骤:
一、前置配置(开发者操作)
确认内购项目状态
- 在App Store Connect中,确保你的月度、年度订阅产品ID与代码中使用的完全一致,产品状态为「准备提交」或「已批准」
- 提交TestFlight版本时,务必在「内购项目」选项中勾选对应的订阅产品,确保两者关联
创建沙箱测试账户
- 进入App Store Connect的「用户和访问」→「沙箱测试员」页面,添加测试员的邮箱(注意:该邮箱不能是已注册正式App Store的账户)
- 设置沙箱账户的密码,无需额外配置系统级登录
二、测试员操作流程
- 测试员安装TestFlight版本的应用后,打开内购界面(即你用
SubscriptionStoreView实现的订阅选择页) - 点击任意订阅选项,系统会弹出Apple ID登录框,此时输入沙箱测试账户的邮箱和密码,不要使用真实App Store账户
- 完成购买流程后,订阅会进入沙箱测试周期:自动续期的时间会被大幅缩短(例如月度订阅约5分钟续期),不会产生真实扣费
三、验证与排查
- 测试员可通过App内的
subscriptionStatusTask回调查看订阅状态是否正确更新 - 开发者可在App Store Connect的「沙箱」→「沙箱交易」页面查看所有测试交易记录
- 若出现「无法连接到App Store」错误,优先检查内购项目是否已与当前TestFlight版本关联,或测试设备的网络状态
内容的提问来源于stack exchange,提问作者KatM
相关产品推荐
相关产品推荐

