iOS应用内付费
html
1,在iTunes connect上建立应用,固然你得先有一个app store的帐号。java
2,建立对应的付费内容,最核心关键的是product_idios
3,建立沙盒测试帐号,你得申请一个没有在苹果注册过的邮箱,之后估计也废了,原有的App Store帐号不能注册进去,我以为这真是一件坑爹的事情。git
4,接下来就是你的本地程序了,注意你的team,profile,bundle ID跟你注册的内容一致,固然,若是你不知道这些内容表明什么,你估计只是一个玩家,而非职业开发人员。服务器
5,在你的编译targets中Capabilities中打开in-app purchase, 印象中StoreKit.framework会自动加入,就算没有,也不要紧,本身在Build Phase中加入便可。app
6,好了,如今就是代码阶段了,具体能够参考http://mobile.51cto.com/iphone-389249.htm,上面基本把全部代码都展现了。iphone
7,服务器端验证receipt。测试
ps: ui
1. [[SKPaymentQueue defaultQueue] finishTransaction: transaction]; 这句话很重要,不被执行的话,会提示您已购买此APP内购买项目 此项目将免费恢复,因此必定得执行,我至少为此浪费了几个小时。能够参考http://blog.csdn.net/dfgjava/article/details/13507429。spa
2.最新的获取receipt从iOS7以后有些变化,以下:
if let receiptUrl = NSBundle.mainBundle().appStoreReceiptURL {
if let receiptData = NSData(contentsOfURL:receiptUrl) {
var receipt_data = receiptData.base64EncodedStringWithOptions(NSDataBase64EncodingOptions.allZeros)
}
}
最后,代码回被我保存到MyProject中。http://git.oschina.net/brightmoon/MyProject
参考文档: