2011-03-28 86 views
0

我想測試我的應用程序內購買(在沙箱),並有以下問題:在應用程序購買問題 - 我在哪裏錯了? iPhone

  • 該應用程序成功地獲取可用的產品,並將其顯示在表格中。
  • 用戶點擊「購買」
  • 用戶被要求輸入用戶名和密碼(這是我的測試用戶)。
  • 一個確認回來在屏幕上說,transcation是成功的。

的問題是,內容再不敢下載和下面的方法似乎並不叫:

- (void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions 
{ 
    for (SKPaymentTransaction *transaction in transactions) 
    { 
     switch (transaction.transactionState) 
     { 
      case SKPaymentTransactionStatePurchased: 
       [self completeTransaction:transaction]; 
       break; 
      case SKPaymentTransactionStateFailed: 
       [self failedTransaction:transaction]; 
       break; 
      case SKPaymentTransactionStateRestored: 
       [self restoreTransaction:transaction]; 
      default: 
       break; 
     } 
    } 
} 

誰能幫助?

回答

1

檢查是否添加事務觀察員

[[SKPaymentQueue defaultQueue]addTransactionObserver:mObserverObject]; 

哪裏mObserverObject是你已經實現updatedTransactions方法類的對象。

+0

嗨Chandan。謝謝你的幫助。 ?我已經把應用程序委託該代碼與選項didfinishlaunching - 這就是問題所在//在文件 #進口的頂級「InAppHelper.h」 //在應用中:didFinishLaunchingWithOptions [SKPaymentQueue defaultQueue] addTransactionObserver: InAppHelper sharedHelper]]; – GuybrushThreepwood 2011-03-28 10:43:00

+0

我不這麼認爲...你確定[InAppHelper sharedHelper]正在返回適當的對象。 – 2011-03-28 10:51:37

+0

我這麼認爲。這是一種單身方法。靜態InAppHelper * _sharedHelper; +(InAppHelper *)sharedHelper { if(_sharedHelper!= nil){ return _sharedHelper; } _sharedHelper = [[InAppHelper alloc] init]; return _sharedHelper; – GuybrushThreepwood 2011-03-28 10:54:00