3

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

我在不显示任何测试广告的 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

我难住了。有人可以帮我过去吗?

提前致谢。

4

1 回答 1

2

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

于 2012-01-14T06:28:34.823 回答