当前位置: 首页 > news >正文

iOS应用IAP设置总结

wjforstudy分享了IAP的一些基本 知识。在论坛的地址是:http://www.cocoachina.com/bbs/read.php?tid=92060 

 1.在开始IAP开发前,先要对IAP有个大概的了解,下面这片文章就是给你预备的:
  苹果的官方文档:Store Kit Guide(In App Purchase)
    现在网上已经有对这个文档很成熟的翻译了,如果想加快阅读速度,看这里
    翻译版本:http://yarin.blog.51cto.com/1130898/549141

    PS:开始IAP开发并不需要多深的背景知识,这里囫囵看下去就可以了。但是要了解IAP的两种验证形式: 设备验证和服务器验证


2.网上流传比较广的IAP开发流程的帖子,讲的范围很全面,但是有的内容跟不上时代了,一共有两点需要注意:
  一、在现在的IAP测试中,已经不需要提交程序再让开发者把程序状态设置“Developer Reject”了,只需要程序      到”prepare for upload“就可以了。
二、在IOS5,已经可以在模拟器中测试,调试IAP这个功能了。
    这一篇文章地址是:
  IAP(程序内购买): 完全攻略 
    http://fei263.blog.163.com/blog/static/927937242011321105241823/
    这篇文章包含了从创建APP ID 开始到IAP基本功能实现的整个流程,很全面,值得花时间去看一看,但是注意几个问题:
    1.文中有几个前置条件没有说明:
<1 在添加Test User之前,应该已经设置好ITunes Connect账户中关于Purchase Contract的信息。至少应该点击contract 的request按钮,让contract置于pending in process的状态。
     完成上面的操作后,你才会在刚进入Manage User界面的时候,能选择创建Test User。


3.请保证这个时候你的pruchase contract已经完成了!contract中的 bank info,tax info,contact info都需要填写完成!
   这篇帖子是这里要推荐的,主要介绍了Itunes Connect中创建了程序信息后,IAP的准备和测试的过程:
【iOS开发必收藏】详解iOS应用程序内使用IAP/StoreKit付费、沙盒(SandBox)测试、创建测试账号流程!
http://blog.csdn.net/xiaominghimi/article/details/6937097


4.遇到问题了?
好了,经过前面的准备后,就到了真正和IAP联通的步骤了。在输入一个Product ID向服务器发起request的时候,很有可能出现失败的情况,在request属性InvalidateIdentifier中,你会发现这个Product ID是无效的。
为什么呢?苹果是不会告诉你的,连个错误代码都没有,非常坑爹。
所以这里我们有一个Check List,需要大家逐条检查:
Have you enabled In-App Purchases for your App ID?
Have you checked Cleared for Sale for your product?
Have you submitted (and optionally rejected) your application binary?
Does your project’s .plist Bundle ID match your App ID?
Have you generated and installed a new provisioning profile for the new App ID?
Have you configured your project to code sign using this new provisioning profile?
Are you building for iPhone OS 3.0 or above?
Are you using the full product ID when when making an SKProductRequest?
Have you waited several hours since adding your product to iTunes Connect?
Are your bank details active on iTunes Connect? (via Mark)
Have you tried deleting the app from your device and reinstalling? (via Hector, S3B, Alex O, Joe, and Alberto)
Is your device jailbroken? If so, you need to revert the jailbreak for IAP to work. (via oh my god, Roman, and xfze)
If you answered “No” to any one of these questions, there’s your problem.


If you answered “Yes” for each of these questions and you still have an invalid product ID, then you have a problem I haven’t seen before. Check out the links in the next section, several of which are Developer Forum posts that were especially helpful in my hunt for debugging invalid product IDs.


5.再使用别人提供的例子代码测试IAP完成以后,这里向你介绍一个别人封装好的类库:ECPurchase
http://www.cocoachina.com/bbs/read.php?tid-38555.html
类库在附件中下载

    相关文章:

  • Contracts, Tax, and Banking 填写流程
  • iOS图标去掉阴影和反光
  • leftBarButtonItem
  • cocos2d-x 开发网络游戏(http postsocket)
  • cocos2d-x 通过JNI实现c/c++和Android的java层函数互调
  • cocos2d-x 控制android硬件音量大小调节按钮
  • c++ 判断字符串只包含字母、数字、汉字
  • APP STORE 付费验证(IAP)服务端验证全过程
  • 浅谈MVC模式在游戏开发的应用
  • android广告赚钱[转]
  • 关于苹果PUSH(APNS)机制的那点事
  • .net的socket示例
  • Xcode添加百度移动统计报错处理
  • Java在Web开发语言上败给了PHP
  • Java实现简单的Socket服务器与客户端字符串通讯(适合初学者阅读)
  • IE9 : DOM Exception: INVALID_CHARACTER_ERR (5)
  • [NodeJS] 关于Buffer
  • 2018一半小结一波
  • Android 架构优化~MVP 架构改造
  • CSS进阶篇--用CSS开启硬件加速来提高网站性能
  • es6
  • iOS 颜色设置看我就够了
  • Java 网络编程(2):UDP 的使用
  • js
  • Node项目之评分系统(二)- 数据库设计
  • Python学习笔记 字符串拼接
  • thinkphp5.1 easywechat4 微信第三方开放平台
  • ucore操作系统实验笔记 - 重新理解中断
  • vagrant 添加本地 box 安装 laravel homestead
  • 从零到一:用Phaser.js写意地开发小游戏(Chapter 3 - 加载游戏资源)
  • 看完九篇字体系列的文章,你还觉得我是在说字体?
  • 快速构建spring-cloud+sleuth+rabbit+ zipkin+es+kibana+grafana日志跟踪平台
  • “十年磨一剑”--有赞的HBase平台实践和应用之路 ...
  • Android开发者必备:推荐一款助力开发的开源APP
  • 整理一些计算机基础知识!
  • # 安徽锐锋科技IDMS系统简介
  • #FPGA(基础知识)
  • #QT(串口助手-界面)
  • (1)(1.13) SiK无线电高级配置(六)
  • (1)(1.19) TeraRanger One/EVO测距仪
  • (function(){})()的分步解析
  • (每日持续更新)信息系统项目管理(第四版)(高级项目管理)考试重点整理 第13章 项目资源管理(七)
  • (南京观海微电子)——I3C协议介绍
  • (七)Java对象在Hibernate持久化层的状态
  • (三)模仿学习-Action数据的模仿
  • (五)MySQL的备份及恢复
  • (一)VirtualBox安装增强功能
  • (转)VC++中ondraw在什么时候调用的
  • ./indexer: error while loading shared libraries: libmysqlclient.so.18: cannot open shared object fil
  • .htaccess配置重写url引擎
  • .net core 6 集成和使用 mongodb
  • .net core Swagger 过滤部分Api
  • .net core webapi 部署iis_一键部署VS插件:让.NET开发者更幸福
  • .net MVC中使用angularJs刷新页面数据列表
  • .NET Project Open Day(2011.11.13)