在做开发的之前先说清楚 Apple Pay 和苹果内购不是一个东西,大家得区分开;

Apple Pay –> 是类似于支付宝支付和微信支付的,用于购买实物的一种支付方式;日常会用到的场景是买个电影票啦等

苹果内购 –> 买是用于应用内购买虚拟商品的一种支付方式,苹果是要抽取30%的,在这不得不吐槽苹果公司也太黑了…. 用到的场景是APP中买金币,会员等,这些都是虚拟的东西;

先说Apple Pay吧, 集成难度也不大;
网上参考的资料还是很多了; 在这随便找一个按照步骤弄一下,基本没啥问题: http://blog.csdn.net/cyh1236951/article/details/51192669
在这就偷个懒,不再赘述, 哈哈哈, 见谅见谅
需要注意的一点就是 Apple Pay有一个自带的支付按钮,只能用于做Apple Pay, 不能用于做别的用图, 当然,因为风格不咋地,一般自定义一个button是没啥问题的;

来说苹果内购买吧, 在做这个开发的时候真的会遇到各种坑, 相信做过的朋友也有同感的;
我就谈谈遇到的一些坑吧
应用内购买的博客也是很多的,具体的操作网上确实不多了,我还不一定够他们写的详细;
http://www.jianshu.com/p/86ac7d3b593a

一般情况下3个步骤就能完成;
1.在iTunes Connect中写些银行税务信息,收到的钱总要有个去向的对吧;

2.卖的是什么… 增加需要出售的虚拟商品; 但是需要记录商品Id,因为在代码实现购买的时候会用到,如果商品id没对的话就购买失败了哦

3.实现代码;
此处省略n行代码…..

经过这三步没出问题是就行;但是… 基本第一次做的都会出问题;

1.商品id出问题: 我记得我在做的时候粗心大意了,然后在购买的时候申请商品列表与本地id对比的时候总是找不到商品导致购买失败;
2.上传凭证出问题: 应用内购买不像支付宝和微信支付, 内购买过程完全是在手机端进行的,在购买成功之后需要将购买凭据传给后台,后台再将凭证拿去校验;
这个凭证的传输就坑了很多人, 无论怎么传,后台都拿不到,或者拿到也是不正确的,那是因为我拿到的凭证是没编码,直接传当然错误啦;
给凭据编码再传就好了,给大家个例子

//9.购买成功后,将信息上传自己的服务器
- (void)completeTransaction:(SKPaymentTransaction *)transaction{NSString *product = transaction.payment.productIdentifier;if ([product length] > 0) {NSArray *tt = [product componentsSeparatedByString:@"."];NSString *bookid = [tt lastObject];if ([bookid length] > 0) {[self recordTransaction:bookid];  //记录交易[self provideContent:bookid];     //处理下载内容}}NSLog(@"购买完成,向自己的服务器验证 ---- %@", transaction.payment.applicationUsername);NSData *data = [NSData dataWithContentsOfFile:[[[NSBundle mainBundle] appStoreReceiptURL] path]];NSString *receipt = [data base64EncodedStringWithOptions:0];receipt = [self URLEncodedString:receipt];//    HHLog(@"苹果收据:%@", receipt);[self buySuccessWithReceipt:receipt transaction:transaction];}
// 苹果收据 编码
-(NSString *)URLEncodedString:(NSString *)str {NSString *encodedString = (NSString *) CFBridgingRelease(CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault,(CFStringRef)str,NULL,(CFStringRef)@"!*'();:@&=+$,/?%#[]",kCFStringEncodingUTF8));return encodedString;
}

3.内购买的测试问题: 上传项目的项目是正式版的, 但是APP审核的时候是在sanBox里测试的,但是上线了用户购买的话又是正式的购买, 这个很尴尬啊 … 然后后台的凭证检验地址就有两个, 一个是sanbox测试的, 一个是正式购买成功的;
最后,后台先用于校验正式购买的,如果不正确再校验测试的,为了上线嘛;

Apple Pay 和 苹果内购买相关推荐

  1. Apple Pay入门

    大家也可以关注我的微信公众号bluefish_ios查看更多更新的一些技术文章分享. 以下内容摘自苹果开发者网站https://developer.apple.com/apple-pay/get-st ...

  2. 苹果官方Apple Pay开发文档(中文版):开始使用Apple Pay

    原文地址:http://www.cocoachina.com/ios/20140910/9573.html 本文由CocoaChina翻译自苹果官方Apple Pay开发文档.目前版本为1.0 概览: ...

  3. 苹果官方Apple Pay开发文档(中文版)

    概览: Apple Pay为用户从你的App里购买实际的物品和服务提供简单而安全的方法.通过Touch ID,用户可使用储存在iPhone 6和iPhone 6 Plus上的信用卡和借记卡支付证书来授 ...

  4. apple pay 和 In-App Purchase(app内购)

    由于公司app审核遭拒,苹果公司回复需要走苹果内购.因此特意去看了周多软件看了他们是怎么做的,扒了网上很多帖子现在整理如下: 一.apple pay 和 In-App Purchase(app内购)是 ...

  5. iOS Apple Pay的使用

    Apple Pay简介 Apple Pay,是苹果公司在2014年苹果秋季新品发布会上发布的的一种基于NFC的手机支付,于2014年10月20日在美国正式上线. 2016年2月18日正式登录中国.Ap ...

  6. Apple Pay,呸!

    嘀,学生卡 嘀,老宁卡 嘀,Apple Pay 我们当中出了一个叛徒! 2月18日上午,Apple Pay正式入华 果粉圈.银行圈.朋友圈.饭友圈.炮友圈 一片沸腾 追捧.吐槽,评论纷杂 1 果粉圈 ...

  7. Apple Pay正式入华:能否成支付宝与微信强敌

    就在春节备受网友吐槽的"敬业福"让支付宝陷入尴尬境地,微信支付即将开始提现收费也引发外界热议之际,移动支付领域迎来重量玩家--苹果Apple Pay今日正式入华. 中国正式成为亚洲 ...

  8. 苹果内购和 Apple Pay

    作者:CC老师_MissCC 链接:http://www.jianshu.com/p/e3bc47e81785 來源:简书 苹果内购 1.什么是内购? 如果你购买的商品,是在本app中使用和消耗的,就 ...

  9. iOS苹果内购流程(Apple Pay)

    好文:https://github.com/lintide/ApplePayDemo 苹果内购流程 字数631 阅读133 评论1 喜欢6 1.登录开发者中心[开发者中心链接](https://dev ...

最新文章

  1. win10系统迁移后系统重装_Win10系统迁移教程
  2. 10kv电压互感器型号_35kV、10kV母线电压异常处理
  3. 【2016年第6期】SKA数据中心云平台方案的概念性研究
  4. Python--详解Python中re.sub
  5. Java仓储物流项目_基于jsp的物流仓库管理系统-JavaEE实现物流仓库管理系统 - java项目源码...
  6. Linux学习之Makefile编写
  7. 电机的力矩、转速和功率
  8. 有哪些免费的可以下载png图片的网站啊?
  9. u盘中的android文件夹图标不显示,怎么解决u盘图标变成文件夹,教您解决方法
  10. Moore-Penrose 广义逆/伪逆 (The Moore-Penrose Pseudoinverse)
  11. word文档如何画线条流程图_word怎么画图,如何用word制作流程图
  12. flash player官网地址 建议不要下载flash.cn的
  13. 用3dmax调整obj
  14. vscode搭建Verilog HDL开发环境
  15. Java中间件之介绍
  16. facebook大数据搜索库faiss使用——选择Index
  17. 推荐三个可以裁剪视频的软件给你
  18. 研究报告|25W以上的高端新能源车KOL爱谁谁?
  19. java使用poi解密excel文件
  20. BoCloud博云完成亿元级C轮融资,加速领跑PaaS及多云管理创业赛道

热门文章

  1. 用Java做手机备忘录_基于安卓Android的手机备忘录设计(AndroidStudio)
  2. schematic和电路图是一个意思吗
  3. 数独程序python
  4. 离职阿里,他说没有所谓“蓄谋已久”,也谈不上“深谋远略”...
  5. Bit-Z为何选择与Bit-M达成战略共识?
  6. 二进制、八进制、十进制与十六进制,最全,没有之一
  7. 秒杀系统设计方案的思考
  8. SpringBoot:LoggingException: log4j-slf4j-impl
  9. 西门子精智触摸屏故障问题处理汇总(黑屏+白屏+花屏等)
  10. 制造业如何做好生产经营分析?