2011-10-31 48 views
3

Wirh SDK 4.2和iOS5,它給我造成了一些困惑。在我的新的基於tabbar的應用程序中,我有多個視圖控制器。我仔細檢查並重新檢查了所有的iAd delgate方法。事實上,我爲此採取了iAdSuite示例的幫助。iAd BannerViewDelegate - 警告印在控制檯上

我在不顯示任何測試廣告的viewController中將應用程序在模擬器上運行了一段時間。我看到以下消息(多個)記錄在控制檯上。

2011-10-30 18:45:07.534 StopAlert [29299:207] ADBannerView:未處理的錯誤(沒有委託或委託不執行didFailToReceiveAdWithError :):錯誤域= ADErrorDomain代碼= 3「的操作不能廣告資源不可用「UserInfo = 0x795d7d0 {ADInternalErrorCode = 3,NSLocalizedFailureReason =廣告資源不可用}

我很困擾它指出」沒有委託或委託沒有執行...「 - 即使.m文件具有這些委託方法。他們是:

- (void)bannerViewDidLoadAd:(ADBannerView *)banner { 
    [self layoutForCurrentOrientation:YES]; 
} 

- (void)bannerView:(ADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error { 
[self layoutForCurrentOrientation:YES]; 
} 

- (BOOL)bannerViewActionShouldBegin:(ADBannerView *)banner willLeaveApplication:(BOOL)willLeave { 
return YES; 
} 

- (void)bannerViewActionDidFinish:(ADBannerView *)banner { 
} 

我錯過了什麼?我在其中的所有4箇中設置了斷點 - 當然,他們沒有被擊中。標題的代表被設置爲「self」,並且.h文件中的聲明確實也有ADBannerViewDelegate

我很難過。有人能幫我過去嗎?

在此先感謝。

回答

2

對於那些通過搜索發現這個問題的人,我現在明白了iAdSuite示例代碼(以及關於在多個視圖中共享廣告橫幅的技術說明)中的東西。 adBanner在其applicationDidFinishLaunching中設置了技術說明示例。這適用於iAdSuite,因爲(這裏是踢球者),它的第一個視圖並不試圖呈現adBanner。那麼這個微妙的問題呢?山姆?我遇到了一個想要在第一個視圖上顯示adBanner的應用程序,該視圖在應用程序委託獲取applicationDidFinishLaunching消息之前已經加載。在我的例子中,我將我的adBanner設置代碼移出了應用程序委託,並將其放入我的初始視圖控制器的viewWillAppear中。而且,我只在adBanner不存在的情況下執行初始化設置(流程返回到我的初始視圖控制器時就是這種情況)。

+0

賓果 - 這是我在我的應用程序中的問題。謝謝... – Sam