AdMob 错误 - 必须先设置 GADBannerView 的 rootViewController 属性,然后才能调



我正在尝试设置一个简单的单视图iOS5 iPhone应用程序(带有AppDelegates,ViewControllers和MainStoryboard),并安装了AdWhirl(包括支持文件 - AdWhirl,GoogleAdMobAdsSDK和TouchJSON) - 仅使用iAds和AdMob。此时,应用程序中没有其他内容。这将在未来的应用程序中用作我自己的起始模板。

我遵循了几个不同的教程来尝试弄清楚如何设置它,因为我只是在学习自己编程。我已经让iAds显示并正常工作,并且iAds确实在AdWhirl中注册了视图,因此它们似乎工作正常。但是我在尝试调用 AdMob 广告时在日志中收到此错误:

在调用 loadRequest 之前必须设置 GADBannerView 的 rootViewController 属性:

在这一点上,我已经搜索并找到了超出我知识范围的答案。有人可以解释我需要做什么以及我需要在哪里做才能修复此错误吗?我认为我需要更改"GoogleAdMobAdsSDK"中的"GADBannerView.h"文件,我已经尝试过这样做,但到目前为止没有成功。

如果有任何其他问题,或者如果您想查看项目文件或代码(就像我说的那样,到目前为止应用程序中没有其他内容),请告诉我。

任何帮助将不胜感激。

好吧,我终于想通了。对于其他有此错误的人,这就是我解决它的方式。

在"ViewController.m"文件中,我更改了以下代码,现在iAds和AdMob广告都显示正常,没有错误。

- (UIViewController *)viewControllerForPresentingModalView {
    //return UIWindow.viewController;
    return [(AppDelegate *)[[UIApplication sharedApplication] delegate] viewController];
}

自:

- (UIViewController *)viewControllerForPresentingModalView {
    //return UIWindow.viewController;
    return self;
}

最新更新