1. 程式人生 > >內建付費 inapp purchase and Error Domain=SKErrorDomain Code=0 “Cannot connect to iTunes Store”錯誤

內建付費 inapp purchase and Error Domain=SKErrorDomain Code=0 “Cannot connect to iTunes Store”錯誤

MKStoreKit 3.0+ 內建付費的開源庫 Mugunth Kumar大神的 

英文iPhone Tutorial – In-App Purchases 

中文翻譯的地址 http://www.overcode.hk/?p=298 

MKStoreKit 4.0  非常簡單 程式碼幾乎幾行就能搞定 比3.0用著方便多了

裡面詳細介紹了 使用方式,原始碼下載裡面給出了連線,

MKStoreKit4.0 使用簡單介紹

原始碼在https://github.com/MugunthKumar/MKStoreKit 

appdelegate.m檔案中新增程式碼

#import "MKStoreManager.h"

在applicationDidFinishLaunching呼叫 [MKStoreManager sharedManager] 使其initialize。

在購買物品的地方使用函式

#import "MKStoreManager.h"
    NSString* kFeatureId = [NSString stringWithFormat:@"com.yourcompany.gamename.%d",_buyProductId+1];    [[MKStoreManager sharedManager] buyFeature:kFeatureId                                    onComplete:^(NSString* purchasedFeature,                                                 NSData*purchasedReceipt,                                                 NSArray* availableDownloads){                                                    //購買成功 新增金錢等物品                                                    NSLog(@"Purchased: %@", purchasedFeature);}                                   onCancelled:^{/*購買取消 做相應操作或者什麼都不做*/}];

buliding 發現arc 錯誤,然後在修改,在TARGETS -> buldphases 中修改相關檔案屬性為-fobjc-arc 一共是三個檔案

就這麼簡單 不再真機上測試 是可以成功的,但是一定要進行真機測試。

真機測試中頻繁出現Error Domain=SKErrorDomain Code=0 “Cannot connect to iTunes Store”錯誤(code = 1 /code = 2/code =3) 錯誤 搞得好頭大 然後就查啊 查 但是最後還是搞定了》,《

可以從以下幾方面檢查

(注意)cydia裝了AppSync導致的IAP sandbox不能問題,越獄可以、裝cydia也可以,但是不能裝AppSync,裝了就會導致IAP沙盒測試失敗()

還有其他的說法 總之很多,大概要進行下面幾點

我最後調好了進行了這些操作

1:如果越獄 在 cydia中解除安裝AppSync

2:刪除裝置上面的應用程式

3:登出store賬戶 然後在啟用新的賬戶設定appstore 地區是美國區

4:重啟裝置

5:run in you UIDevice

然後就感覺突然 天晴了。測試成功