由於開發一個應用有個內付費去廣告功能,介於蘋果官方提供的方法沒用過,感受有些複雜,因而選用了第三方組件Parse來解決這個問題,簡單易操做;app
簡化蘋果官方內付費問題,使用方法分廠簡單隻有兩個Block方法,如下實現簡單的購買過程ide
在AppDelegate的application:didFinishLaunchingWithOptions:方法中測試
// Use the product identifier from iTunes to register a handler. [PFPurchase addObserverForProduct:@"ProductID" block:^(SKPaymentTransaction *transaction) { // Write business logic that should run once this product is purchased. }];
在購買的地方調用
網站
[PFPurchase buyProduct:@"ProductID" block:^(NSError *error) { if (!error) { // Run UI logic that informs user the product has been purchased, such as displaying an alert view. } }];
可是我在真機測試的時候一直出現Error Domain=Parse Code=146 "The operation couldn’t be completed. (Parse error 146.),即便新建工程也一樣此錯誤。this
Parse官方網站提供了對這個錯誤答疑,因爲不夠細心把解決方案屢次忽略:①多是這個產品ID(ProductID)有問題,或者不存在。②而我存在的問題是設備越獄了致使不能購買。spa
解決辦法:①檢查在itunes上ID問題;插件
②在Cydia中卸載掉Assync插件,重啓設備便可解決;
code
③以上不行,換未越獄的設備試吧。orm