开发:
具体的步骤及代码就不说了,网上有很多类似的文章大家可以看一下,具体就是分为两大不走:
(1)去苹果后台注册银行卡信息,添加内购项目
(2)就是代码中集成内购
我今天要说的主要是在你要做上面两步的内容的时候需要注意的事情
首先在做第一步操作的时候注册银行卡信息基本上不会有太大的问题这边可以随便网上搜一个教程按照步骤走就行了,在添加内购项目的时候需要注意几点:
(a)描述内购的时候千万不要用多少人民币来描述举个列子:
假如你要添加一个一元的内购产品,一般的产品都会这样子描述内购
后面化掉的内容千万不要写人民币 这样会被拒 被拒的原因就是你需要使用虚拟币来代替,比如1.00苹果币什么的 这个可以根据你们的产品随便命名的
还有一个地方可能有些用户会有点疑惑就是填写产品id 我查了一下网上的文档很多都没有说明这个产品id到底是干嘛用的 我要怎么去命名他
其实这个产品id是你代码里要付钱的时候向苹果后台传的的一个ID以区别你要付款的项目一般命名方式呢就是你的项目bundle ID 加上金额就可以了
(b)很多用户刚开始集成内购的时候会很疑惑,按照步骤一步一步来的可是就是支付不成功不知道为什么,这里你要注意了第一次集成内购只要你的app没有上线此时内购就只能使用沙盒测试账号来测试,使用正常的苹果账号是没有办法支付的,很多用户会担心上线之后再用正常的苹果账号支付会出现问题,这个你们可以放心的只要测试账号在测试的环境下都走通了那么正是环境下就不会出现问题的,这里我说一下添加沙盒账号需要注意的点
这里直接点击添加 添加的时候需要一个邮箱 注意这个邮箱千万不要注册成苹果账号 这样的话就不能当做沙箱测试账号了 剩下的信息都可以随便填写的
以上就是在苹果后台需要注意的一些东西接下来我要说一下代码中需要注意的东西当然也是本文的重点:
第一点:如果你这边已经按照网上的教程一步一步实现完成之后呢你会发现会有一个向苹果服务器验证的一个步骤网上的流程很多都是贴上了前台验证的代码,这里要提醒一下大家这个验证最好是后来做验证我们前端这边只需要拿到后台反给我们结果就可以了,(解释一下下这个验证的步骤 就是说手机这边付钱的流程已经操作完毕了,苹果这边会给你一个凭证你再拿这个凭证做验证 ,来验证你的支付操作是否已经完成),所以呢这里坑就来了,加入我们在付完钱的时候在向后台验证的这个阶段我们自己的服务器出问题了或者突然网断了,那么我们就没有办法知道到底是否支付成功,所以我们这边要做的是,在我们获取到这个凭证的时候我们就应该存到沙盒中,当验证成功了我们再把沙盒中的凭证删掉,这样就避免了支付成功之后应为自己服务器的问题而充值不成功。
第二点:在你们app中一定不能有提现的功能并且仅仅只能在ios设备上使用并且在你的充值界面还要有相应的说明文案具体文案如下图:
第三点:你的整个项目中不能存在你们除了app注册以外的其他注册方式,例如某个页面有个链接链接打开的内容是该app web端的注册页面,这种情况是不允许的,出现的话一定会被拒,苹果会认为你这种方式是在引导用户使用别的方式支付来绕开苹果支付,整个项目中都不能有提示性语言提示用户可以在安卓端支付等之类的提示性文案。
第四点:苹果支付不能存在限制例如公司想实现产品登录成功之后才能支付,这样的话点击购买不是跳转苹果支付,有可能是跳转登录页面等等,这种情况是不允许的,苹果会认为违反了他们的5.1.1审核规则
针对这种问题解决方法就是在支付的时候不能添加任何限制如果存在登陆这种情况建议可以添加一个游客支付就好了。
第四点:假如项目中存在客服电话之类的按钮不要放在一级页面,可选择放在二级页面或者更考后的页面否则会被拒。
以上就是我在做内购的时候遇到的所有坑了,还有很多不完善的地方还请多多包涵~~
原文地址:https://www.cnblogs.com/TuDous/p/8442733.html