iOS内购流程文档-Lion

作者: 会跳舞的狮子 | 来源:发表于2017-03-09 15:32 被阅读1166次

iOS内购流程:

iOS内购 什么时候用到呢? 虚拟产品就需要用到iOS内购;
购买的商品,是在本app中使用和消耗的,就一定要用内购,否则会被拒绝上线,例如:游戏币,在线书籍,app中使用的道具等。

重要的大概步骤:

内购步骤大步骤有4步:

1,填写协议,税务和银行业务;
2,填写用户和职能; 创建内购的项目
3,写代码,和后台配合
4,添加项目内购测试账号;检验成果

填写协议,税务和银行业务一共有21个步骤需要完成;

以下是具体步骤:

一、先到iTunes Connect上填写协议、税务和银行业务(如下图)

如果是外包公司开发的,那么外包会让客户填写这一堆信息;如果只是产品公司的技术开发人员,那么你可以让项目负责人填写这一堆信息;


第一步
第二步 第三步 第四部 第五步

先点击Contact Info 的Set Up

第六步 第七步 第八步 第九步 第十步 第十一步 第十二步
进行十二步的时候可能有些银行通过下面的Look up CNAPS Code方法查不到,就需要借助百度了,一定要准确查询,否则会有问题。
第十三步
这一步需要注意的是,货币类型可能有歧义,选择了CNY,支持国产。还有一点,银行账号如果是对公的账号,需要填写公司的英文名称,如果没有的话,上拼音!然后点击保存银行信息就算ok了,然后退回到最开始的页面
第十四步 第十五步 第十六步 第十七步 第十八步 第十九步 第二十步 第二十一步(完成)

二、为app添加内购产品

在iTunes Connect在你要添加内购的app中,进入到功能页面

添加内购项目

在你点击添加内购产品按钮后会有弹框,提示你选择类型,这个就要看你app的需求了

选择类型 名称和定价 本地化版本 填写审核信息(现在的图)

填写完审核信息后,点击右上角的“存储”按钮,就添加了一个内购产品~

三、添加沙盒技术测试员

在iTunes Connect的用户和智能中选择“沙盒技术测试员”,填写信息保存以后就有一个测试员了

添加沙盒测试员

购买成功后我们iOS前端可以单独在客户端完成订单正确性的验证。但是因为有的项目后台要Android和iOS两端生成账单便于对账。所以我们请求后台接口,服务器处验证是否支付成功,依据后台返回结果做相应逻辑处理。

(PS:订单正确性的验证本来可以是:iOS客户端(购买成功)→ 前端到苹果服务器验证→处理苹果返回结果做相应逻辑处理; 现在:iOS客户端(购买成功)→ 后台→后台到苹果服务器验证→处理后台返回结果做相应逻辑处理)

服务器要做的是:

1.接收iOS前端发过来的购买凭证。

2.判断凭证是否已经存在或验证过,然后存储该凭证。

3.将该凭证发送到对应环境下的苹果服务器验证,并将验证结果返回给客户端。

4.根据需求,是否修改用户相应信息。

注意事项

1.bundleID要与iTunes Connect上你App的相同,不然是请求不到产品信息的

2.在沙盒环境进行测试内购的时候,要使用没有越狱的苹果手机。

3.在沙盒环境下真机测试内购时,请去app store中注销你的apple ID,不然发起支付购买请求后会直接case:SKPaymentTransactionStateFailed。使用沙盒测试员的账号时不需要真正花钱的。

4.如果只添加了一个沙盒测试员账号,当一个真机已经使用了这个账号,另一个真机再使用这个账号支付也是会发生错误的。那就去多建几个沙盒测试员账号使用不同的,反正也是免费的,填写也很快。

5.监听购买结果,当失败和成功时代码中要调用:

[[SKPaymentQueue defaultQueue] finishTransaction:transaction];

该方法通知苹果支付队列该交易已完成,不然就会已发起相同 ID 的商品购买就会有此项目将免费恢复的提示。

请在本地做一下凭证存储

现在订单正确性的验证是:iOS客户端(购买成功)→ 后台→后台到苹果服务器验证→处理后台返回结果做相应逻辑处理。

--

针对图上的情况:当我们前端购买成功后,凭证本地保留一份,当与后台验证成功后,再将本地保留的凭证删除。否者一直使用本地已经保留的凭证与后台交互。

相关文章

  • iOS内购流程文档-Lion

    iOS内购流程: iOS内购 什么时候用到呢? 虚拟产品就需要用到iOS内购;购买的商品,是在本app中...

  • iOS-内购

    前言:关于iOS内购,参考两篇博文 iOS-iOS内购流程(手把手图文教程)iOS内购你看我就够了(埋坑篇) 我自...

  • IOS内购服务端技术方案

    IOS内购服务端技术方案 IOS购买vip流程 IOS内购服务器模式的主要流程如下所示: 服务端验证注意点 苹果A...

  • iOS 内购流程

    一.先配置内购环境: 二.主要代码实现部分

  • iOS 内购流程

    最近公司的项目因为内购被拒了,需要添加内购,爬了两天帖子,终于弄好了。 协议,税务和银行业务以及新建app就不说明...

  • iOS 内购流程

    1.创建开发生产包含内购的证书 2.在Itunes connect里我的App功能创建内购商品,价格是Apple那...

  • iOS 内购流程

    (1)第一步 需要到苹果开发者账号中配置账号和配置内购商品 (2)在xcode 中配置内购选项 (3)在代码中获取...

  • iOS支付

    支付宝支付 支付宝支付支付宝补充 微信支付 微信支付 内购 iOS开发 内购流程

  • iOS内购(最新)-内含遇到的"坑"

    内购--- iOS 客户端进行虚拟商品的支付方式 官方中文内购教程文档:http://help.apple.com...

  • iOS 内购流程图

    一 、iOS 内购流程: 1. 用户iOS应用 用户选择产品 提交到App Store 2. App ...

网友评论

  • 523c13d727cc:LZ你好 我现在写好了几个App 内购买项目 但状态都是元数据丢失 请问是什么意思啊 要怎么解决呢
  • weicyNO_1:大神想请问一下。我新添加了一个内购项目。如果项目中想获取这个项目用不用再次提交新版本。现在版本中模拟器跑真实环境能请求到数据。appstore中下载的请求不到产品。是什么原因?必须提交新版本吗?如果必须提交新版本中,新版本中没有添加内狗项目是不是不用添加
  • Touchs:请问持卡人姓名要求填写英文的, 直接写拼音吗?
  • YNTCode:你好,请教一个问题,类似爱奇艺和腾讯视频的连续包月业务是属于自动续订订阅吗?
    会跳舞的狮子:@杨大仙_ 他会先提示你 然后才继续订阅

本文标题:iOS内购流程文档-Lion

本文链接:https://www.haomeiwen.com/subject/kpgwgttx.html