iOS应用IAP设置总结

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
类库在附件中下载。
iOS应用IAP设置总结的更多相关文章
- iOS开发--应用设置及用户默认设置【1、bundle的运用】
在iphone里面,应用都会在“设置”里面有个专属的应用设置,选择该菜单界面,用户便可以在其中输入和更改各种选项,协助用户更便捷设置个人喜好与习惯. 在这一节中,希望能通过对捆绑包(bu ...
- iOS开发--应用设置及用户默认设置——转载
[链接]iOS开发--应用设置及用户默认设置[1.bundlehttp://www.jianshu.com/p/6f2913f6b218 在iphone里面,应用都会在“设置”里面有个专属的应用设置, ...
- 解决iOS中 tabBarItem设置图片(image+title切图在一起)时造成的图片向上偏移
解决iOS中 tabBarItem设置图片(image+title切图在一起)时造成的图片向上偏移 解决办法1:设置tabBarItem的imageInsets属性 代码示例: childContro ...
- 【Openvpn】iOS OpenVPN客户端设置指南(适用iPhone/iPad)
适用于iPhone/iPad/这些iOS设备.之前iOS使用OpenVPN是需要越狱的,并且是付费第三方应用. 去年开始OpenVPN官方推出了iOS客户端就好用多了,免费也无需越狱. 说明:如果是新 ...
- ios 10 访问设置问题
ios 10 访问设置问题 从ios8之api支持访问设置通过访问UIApplicationOpenSettingsURLString来跳转设置 NSURL*url=[NSURL URLWithStr ...
- iOS开发中设置UITextField的占位文字的颜色,和光标的颜色
在iOS开发中,对于很多初学者而言,很有可能碰到需要修改UITextField的占位文字的颜色,以及当UITextField成为第一响应者后光标的颜色,那么下面小编就介绍一下修改占位文字和光标的颜色. ...
- iOS启动页设置
点击项目->TARGETS->App Icons and Launch Images->Launch Images Source->Use Asset Catalog...-& ...
- iOS 8 Xcode6 设置Launch Image 启动图片
本人apem http://www.mamicode.com/info-detail-494411.html 如何设置App的启动图,也就是Launch Image? Step1 1.点击Image. ...
- iOS开发--应用设置及用户默认设置【2、读取应用中的设置】
在上一节中,我们通过探讨应用的系统设置的基本功能,了解运用bundle捆绑包以及plist文件的基本开发.用户能够使用设置应用来声明他们的偏好设置,那么我们怎样去调用用户所设置的参数呢 ...
随机推荐
- Android Studio配置Git及Git文件状态说明
Android Studio配置Git还是比较简单的,麻烦的是可能中间出现各种问题.如果你想了解或感兴趣,请往下看. 首先你得下载Git客户端,网址:http://git-scm.com/downlo ...
- [codevs 1995]黑魔法师之门(并查集)
题目:http://codevs.cn/problem/1995/ 分析:脑补一下满足题目要求的子图肯定就是环……于是题目就变成了不断加边求环的个数.看起来有点麻烦……但是环的实质是几个小环组合起来的 ...
- ThinkPHP之验证码的使用
ThinkPHP中已经提供了验证码的生成以及验证的功能.下面介绍如何使用验证码.编程的时候还是采用MVC的方式 View层 <!DOCTYPE html> <html> < ...
- 【POJ 2104】 K-th Number 主席树模板题
达神主席树讲解传送门:http://blog.csdn.net/dad3zz/article/details/50638026 2016-02-23:真的是模板题诶,主席树模板水过.今天新校网不好,没 ...
- 在windows 环境下对于 git 服务器的安装和使用
前言: 虽然说在团队开发的时候会有版本控制服务器,但是个人自己开发的时候,有的时候也需要有个版本控制下,比如,你改好了一个小的功能,然后在这个功能上继续扩展,结果扩展不成功,于是回到这个小功能上去.当 ...
- Eclipse属性文件编辑器---Properties Editor
今天在用 Eclipse 来编辑 .properties 文件时,写的中文会自动转为 Unicode 编码,完全不知道自己的中文写的是什么!! 于是查了一下,网上推荐,在Eclipse 中 安装一个 ...
- Java虚拟机的功能
1:通过ClassLoader寻找和装载class文件 2:解释字节码成为指令并执行,提供class文件的运行环境.即将字节码转换为不同OS下可执行的机器码指令. 3:进行垃圾回收. 4:提供与硬件交 ...
- SQL Server之存储过程基础知识
什么是存储过程呢?存储过程就是作为可执行对象存放在数据库中的一个或多个SQL命令. 通俗来讲:存储过程其实就是能完成一定操作的一组SQL语句. 那为什么要用存储过程呢?1.存储过程只在创造时进行编译, ...
- TinyMCE(富文本编辑器)
[转]TinyMCE(富文本编辑器)在Asp.Net中的使用方法 官网演示以及示例代码:https://www.tinymce.com/docs/demo/image-tools/ 转自:http:/ ...
- BZOJ-1407 Savage 枚举+拓展欧几里得(+中国剩余定理??)
zky学长实力ACM赛制测试,和 大新闻(YveH) 和 华莱士(hjxcpg) 组队...2h 10T,开始 分工我搞A,大新闻B,华莱士C,于是开搞: 然而第一题巨鬼畜,想了40min发现似乎不可 ...