IAP(In-App Purchase)
0. 前言
IAP
是Apple对于App内虚拟商品购买的唯一途径, Apple与App将进行3/7
分账, 而对于开发者来说, 加上缴税, 实际到手的金额不到总额度的70%.
所以虚拟商品是Apple的重要收入来源之一, 审核力度不低, 若强行绕过其审核机制后被发现, 开发者账户会被Apple标记为删除, 且App不可转移上架.
自2020年起, Apple推出了优惠政策(详情), Apple平台佣金在此政策下, 可降低为15%.
1. 账号设置
登录开发者账户, App Store Connect > 协议、税务和银行业务, 在内填写协议、税务和银行业务.
2. 虚拟商品
虚拟商品的首次上架需要与支持的App包一起审核, 在App构建前, 添加In-App Purchase
的Capability上传后, App Store Connect 选择有这个能力的包上架时, 可以在当前版本的编辑页面编辑上架的虚拟商品.
在App的左侧, 也有App内购买项目
和订阅
2个栏目用于编辑上架的虚拟商品, 在首次随App包提审并上线后, 后续的虚拟商品需要同样的编辑审核才能上架, 不同的是不用再跟随新的App包一起提审.
备注: 虚拟商品的ID应以App的bundle id
作为前缀进行规范编辑, 一旦开始使用, 此ID将不可改变, 即时删除了, 也不可重新使用.
3. 测试方式
Apple为测试IAP
提供了沙盒测试能力, 以开发签名进行打包, 以沙盒登记过的非真实AppleID账户的AppleID登录支付(App Store提前退出登录).
4. 服务端设置
输入用于接收 App Store 服务器通知的网址(URL)
App Store Server Notifications
在App Store Connect
的App详细面板内左侧栏目App信息
中, 可以配置服务器通知网址.
5. IAP流程
IAP
的流程图如上所示.
对于订阅的商品, 有以下的责任:
- App有责任计算有效期与其支持的内容
- App有责任检测非自动的订阅并向用户弹出续期提示
- App有责任在订阅有效期间提供可用的服务, 包括恢复已购买的订阅服务.
就是说以上这些, Apple不帮你做, 得配合Apple提供的服务器通知, 维护订阅中提供的服务可用性.