2011-03-12 9 views
0

私のアプリでは、アプリ内購入システムを設定しています。私はiTuneに接続する際にアプリ内購入を登録しました。 (基本的に私はそれをプリントアウトしようとしているが、何もしなかった)アプリ購入時のiTuneに問題があります!

- (void) requestProductData { 
    SKProductsRequest *request= 
     [[[SKProductsRequest alloc] initWithProductIdentifiers: 
     [NSSet setWithObject:@"com.myapp.id"]] autorelease]; 
    request.delegate = self; 
    [request start]; 
} 

これは、製品情報を受信するためのコードは次のとおりです。

これは、製品情報を要求するためのコードです:そして、ここに私のコードが来ます

@interface StoreObserver : NSObject <SKProductsRequestDelegate>{ 

I:

- (void)productsRequest:(SKProductsRequest *)request didReceiveResponse:(SKProductsResponse *)response { 
    NSArray *myProduct = response.products; 
    SKProduct *product = [myProduct objectAtIndex:0]; 
    NSNumberFormatter *numberFormatter = [[NSNumberFormatter alloc] init]; 
    [numberFormatter setFormatterBehavior:NSNumberFormatterBehavior10_4]; 
    [numberFormatter setNumberStyle:NSNumberFormatterCurrencyStyle]; 
    [numberFormatter setLocale:product.priceLocale]; 
    NSString *formattedString = [numberFormatter stringFromNumber:product.price]; 
    [numberFormatter release]; 
    NSLog(@"Product 0 : %@, %@, %@, %@, %@", product.productIdentifier, product.localizedDescription, product.localizedTitle, product.priceLocale.localeIdentifier, formattedString); 
    [request autorelease]; 
} 

は、私は、デリゲートを適用していますrequestProductDataをトリガーするボタンを使用しました。ブレークポイントを使うことで、私はそれが呼び出されたと確信していました。ただし、productsRequestは呼び出されませんでした。私も接続性を確認しました。

誰か手掛かりがありませんか?

- (void) requestProductData { 
    SKProductsRequest *request= 
     [[[SKProductsRequest alloc] initWithProductIdentifiers: 
     [NSSet setWithObject:@"com.myapp.id"]] autorelease]; //<- here 
    request.delegate = self; 
    [request start]; 
} 

あなたはSKProductsRequestを自動解放することはありません:

+0

これはデバイスかシミュレータから呼び出していますか? – Hollance

+0

私のデバイスから電話しています。 –

答えて

0

を推測HOWTOの一部をスキップすることは問題がここにあることが判明しました。このミスをするのはとても馬鹿です。

2

あなたは、私が

[[SKPaymentQueue defaultQueue] addTransactionObserver:self]; 
+0

ありがとうございます。私はそれを試してみます。私はSKPaymentQueueはSKPaymentTransactionObserverと何か関係があると思った。 –

+0

良い点は、あなたはそれについて正しいかもしれません。あなたのデバイスからアプリを削除しようとしましたか? iTunes Connectで製品IDを設定してからどれくらい待っていますか?サンドボックスアカウントを使用していますか?バイナリをiTunes Connectにアップロードしましたか? – mvds

+0

または、この素晴らしいウォークスルーを自分でご覧ください:http://troybrant.net/blog/2010/01/in-app-purchases-a-full-walkthrough/ – mvds

関連する問題