iOS应用IAP设置总结

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

 1.在开始IAP开发前,先要对IAP有个大概的了解,下面这片文章就是给你预备的:

苹果的官方文档:StoreKitGuide(InAppPurchase)

现在网上已经有对这个文档很成熟的翻译了,如果想加快阅读速度,看这里

翻译版本:http://yarin.blog.51cto.com/1130898/549141

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

2.网上流传比较广的IAP开发流程的帖子,讲的范围很全面,但是有的内容跟不上时代了,一共有两点需要注意:

一、在现在的IAP测试中,已经不需要提交程序再让开发者把程序状态设置“DeveloperReject”了,只需要程序到”prepareforupload“就可以了。

二、在IOS5,已经可以在模拟器中测试,调试IAP这个功能了。

这一篇文章地址是:

IAP(程序内购买):完全攻略

http://fei263.blog.163.com/blog/static/927937242011321105241823/

这篇文章包含了从创建APPID开始到IAP基本功能实现的整个流程,很全面,值得花时间去看一看,但是注意几个问题:

1.文中有几个前置条件没有说明:

<1在添加TestUser之前,应该已经设置好ITunesConnect账户中关于PurchaseContract的信息。至少应该点击contract的request按钮,让contract置于pendinginprocess的状态。

完成上面的操作后,你才会在刚进入ManageUser界面的时候,能选择创建TestUser。

3.请保证这个时候你的pruchasecontract已经完成了!contract中的bankinfo,taxinfo,contactinfo都需要填写完成!

这篇帖子是这里要推荐的,主要介绍了ItunesConnect中创建了程序信息后,IAP的准备和测试的过程:

【iOS开发必收藏】详解iOS应用程序内使用IAP/StoreKit付费、沙盒(SandBox)测试、创建测试账号流程!

http://blog.csdn.net/xiaominghimi/article/details/6937097

4.遇到问题了?

好了,经过前面的准备后,就到了真正和IAP联通的步骤了。在输入一个ProductID向服务器发起request的时候,很有可能出现失败的情况,在request属性InvalidateIdentifier中,你会发现这个ProductID是无效的。

为什么呢?苹果是不会告诉你的,连个错误代码都没有,非常坑爹。

所以这里我们有一个CheckList,需要大家逐条检查:

HaveyouenabledIn-AppPurchasesforyourAppID?

HaveyoucheckedClearedforSaleforyourproduct?

Haveyousubmitted(andoptionallyrejected)yourapplicationbinary?

Doesyourproject’s.plistBundleIDmatchyourAppID?

HaveyougeneratedandinstalledanewprovisioningprofileforthenewAppID?

Haveyouconfiguredyourprojecttocodesignusingthisnewprovisioningprofile?

AreyoubuildingforiPhoneOS3.0orabove?

AreyouusingthefullproductIDwhenwhenmakinganSKProductRequest?

HaveyouwaitedseveralhourssinceaddingyourproducttoiTunesConnect?

AreyourbankdetailsactiveoniTunesConnect?(viaMark)

Haveyoutrieddeletingtheappfromyourdeviceandreinstalling?(viaHector,S3B,AlexO,Joe,andAlberto)

Isyourdevicejailbroken?Ifso,youneedtorevertthejailbreakforIAPtowork.(viaohmygod,Roman,andxfze)

Ifyouanswered“No”toanyoneofthesequestions,there’syourproblem.

Ifyouanswered“Yes”foreachofthesequestionsandyoustillhaveaninvalidproductID,thenyouhaveaproblemIhaven’tseenbefore.Checkoutthelinksinthenextsection,severalofwhichareDeveloperForumpoststhatwereespeciallyhelpfulinmyhuntfordebugginginvalidproductIDs.

5.再使用别人提供的例子代码测试IAP完成以后,这里向你介绍一个别人封装好的类库:ECPurchase

http://www.cocoachina.com/bbs/read.php?tid-38555.html

类库在附件中下载。

相关推荐