iAd BannerViewDelegate - 警告打印在控制台上

时间:2011-10-31 04:12:08

标签: iad adbannerview

Wirh SDK 4.2和iOS5,它给我带来了一些困惑。在我的新基于tabbar的应用程序中,我有多个视图控制器。我仔细检查并重新检查了所有iAd delgate方法是否存在。事实上,我为此采取了iAdSuite示例的帮助。

我在一个没有显示任何测试广告的viewController中将应用程序在simiulator上运行了一段时间。我在控制台上看到以下消息(多个)。

2011-10-30 18:45:07.534 StopAlert [29299:207] ADBannerView:未处理的错误(没有委托或委托没有实现didFailToReceiveAdWithError :):错误Domain = ADErrorDomain Code = 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

我很难过。有人能帮我过去吗?

提前致谢。

1 个答案:

答案 0 :(得分:2)

对于那些通过搜索遇到这个问题的人,我现在明白了什么让我放弃了iAdSuite示例代码(以及关于在多个视图之间共享广告横幅的技术说明)。技术说明示例在其applicationDidFinishLaunching中设置了adBanner。这适用于iAdSuite,因为(这里是踢球者)它的第一个视图没有尝试呈现adBanner。那么微妙的问题?山姆?我遇到了一个想要在第一个视图上显示adBanner的应用程序是在应用程序委托获取applicationDidFinishLaunching消息之前已经加载了视图。在我的情况下,我将adBanner设置代码从app委托中移出并将其放入我的初始视图控制器的viewWillAppear中。如果adBanner尚不存在,那么我只会进行初始化设置(当流程返回到我的初始视图控制器时就是这种情况)。