IOS 苹果IAP(内购)之创建沙盒账号
沙盒账号是什么?
如果IOS应用里面用到了苹果应用内付费(IAP)功能,那么在项目上线前就一定要进行内购功能测试。在开发完成之后,如何进行测试呢?难道我测试个内购功能还要自己掏钱?就算是公司报销,苹果还是要分3成的佣金,如果测试还要花钱,那这也太坑了吧。
当然,苹果没有这么坑,如果测试内购,苹果内部提供了沙盒账号(也叫沙箱账号)的方式。这个沙箱账号就是一个虚拟的AppleID,在开发者账号后台的App Store Connect上配置了之后就能使用沙盒账号测试内购即可。
有了沙盒账号,就能体验一把土豪的感觉了,游戏钻石什么的随便充,反正也不用真花钱。
沙盒账号创建的前提条件
- bundleID不要搞错,开发者账号、证书、bundleID要一致;
- 内购的商品ID,价格等相关信息已经录入到开发者后台(不然那你买什么);
- 开发者后台已经创建好沙盒测试账号(下面我们会讲如何创建);
- 你要有一部真机(iPhone或iPad都行,别用模拟器就好。而且不能是越狱机);
- 如果你是第一次在这个开发者账号上集成内购功能,请先将App Store Connect上的税务协议都填写好,否则内购时会发现商品ID无效。
沙盒账号创建
登录苹果开发者后台--App Store Connect--用户和访问--沙箱--添加测试账户。
-
苹果开发者后台
-
进入App Store Connect,点击:用户和访问
-
点击--沙盒,添加测试账户。
-
输入姓名,邮箱地址,密码,然后出现下面这个界面就表示当前账号已经创建好了沙盒账号。
注意:
- 电子邮件不能是别人已经注册过AppleID的邮箱。
- 电子邮箱可以是一个不存在电子邮箱(只要符合格式,随便写)。
- App Store 地区不要乱选。虽然随便哪个地区都可以用来测试(还没上线之前app并没有地区之分),但是在沙盒测试的时候,弹出的购买提示框会根据当前AppleID(沙盒账号)的地区显示语言的。
沙盒账号使用流程
- 在iPhone上安装测试包(必须是adhoc签名证书或者develop签名证书打的包,不能是从App Store上下载的)。
- 退出iCloud账号,使用刚刚创建的沙盒账号登录iCloud。
- 退出iPhone的App Store账号,这里不需要登录了。
暂时才到这一步,后续走完了沙盒账号的测试流程,会在这里进行补充。
沙盒账号注意事项
- BudleID,证书,商品ID等内容一致,才能进行接下来的储值测试(BundleID都不对,还玩什么)。
- 测试设备需要使用不越狱的真机(越狱机不能进行沙盒储值,模拟器也不能进行沙盒储值)。
- 沙盒账号是不能直接在App Store进行登录的,只能在点击了购买商品之后,在弹出的登录框进行登录。
- 真实的AppleID不能在adhoc证书和develop证书打出来的包进行沙盒储值测试,所以在沙盒测试之前,需要退出真实的AppleID账号。
- 从App Store上面下载的包不能使用沙盒账号进行储值。
关于证书的问题:
- 使用develop签名证书和adhoc签名证书打的ipa包,我把他们叫做测试包,测试包只能使用沙盒账号进行储值,不能使用真实的AppleID进行储值。
- 从App Store应用下载的包,我把他们叫做线上包,线上包只能使用真实的AppleID进行储值,不能使用沙盒账号进行储值。