通知_type
https://developer.apple.com/documentation/appstoreservernotifications/notification_type
配置自动续期订阅
https://help.apple.com/app-store-connect/#/dev58bda3212
沙盒测试员添加
https://appstoreconnect.apple.com/access/testers
注意:苹果只支持一个APP账号和一个appleID 的连续订阅,
如果你在一个账号连续订阅成后,在2分钟内用两一个APP账号也包月订阅成功, 那是苹果服务器还没反应过来, 前端这边苹果会在你支付下订单的时候出来弹框告诉你订阅过了,
要么你点管理进入设置取消订阅,要么你点好按钮
类型1 1个全新APP账号 + 1个全新苹果账号 连续包月 苹果5次通知,第一次是购买和普通的消耗性产品走同一个订单支付验单逻辑, 后续都是自动续订都是苹果主动发过来的没有产品信息的订单逻辑,需要APP内终止此订单 手动在设置中会 取消订阅,会受到苹果的取消推送通知 APP会员到期,在次购买走自动续订+验单逻辑,设置中会勾选订阅, 苹果推送通知订阅状态 类型2 1个全新APP账号 + 1个全新苹果账号 连续包月 5次续订没有走完,第3次 时在设置中手动取消订阅,苹果会发通知取消续订状态的更改 APP会员到期,在次购买走自动续订+验单逻辑,设置中会勾选订阅, 苹果推送通知订阅状态 类型3 多个全新APP账号 + 1个全新苹果账号 连续包月 第一次是购买和普通的消耗性产品走同一个订单支付验单逻辑,
苹果只支持一个APP账号和一个appleID 的连续订阅,
如果你在苹果服务器没反应过来的时候,手速惊人切换
后续切换其他APP账号购买包月,并且订阅成功,会走连续包月逻辑 + 订单支付验单逻辑,
苹果应该会绑定到你最后账号的连续订阅上 在设置中手动取消订阅, 只会收到一个苹果推送的取消状态,需要后端只做最后的通知处理APP账号取消续订 类型4 1个APP账号testA + 苹果账号A 连续包月的订阅状态, 切换苹果账号B, 在设置中订阅状态会更改为没有订阅, 在切换回苹果账号A, 订阅状态又变回了已经订阅的状态 后端需要在接收到续订状态更改或者即将过期的时候,给用户账号绑定的手机号发短信,提醒用户会员即将到期
测试问题
1、因测试环境问题,连续包月扣款失败场景无法测试 2、苹果订阅页中反向订阅连续包月套餐无法验证,测试环境反向订阅就是订阅线上的去了,无法走沙盒测试账号;(反向订阅的场景无法测试) 3、APP store页中新增的订阅窗口无法验证待上线后才能验证;
最后需要加上支持App Store跳转链接
https://devstreaming-cdn.apple.com/videos/wwdc/2017/303f0u5froddl13/303/303_whats_new_in_storekit.pdf