无法在ios上使用AdMob获取任何测试广告

时间:2013-03-20 15:00:40

标签: ios admob

我正在测试AdMob。我是这样做的:

AdManager *adManager = [AdManager sharedAdManager];
adManager.gadBannerView.adUnitID = @"a1514981c9444a4";
adManager.gadBannerView.rootViewController = self;
adManager.gadBannerView.delegate = self;
[adManager.gadBannerView setOriginY:self.view.frame.size.height-adManager.gadBannerView.frame.size.height];
[self.view addSubview:adManager.adBannerView];


GADRequest *request = [GADRequest request];
request.testDevices = [NSArray arrayWithObjects:@"CECADC69-4A6B-4BB4-BF24-CACDA871B44A", nil];
[adManager.gadBannerView loadRequest:request];

和@“CECAD ......”GAD_SIMULATOR_ID。我在模拟器上测试时总是在控制台中出错。在我的设备上也是同样的错误。 iOS版本为6.0+。即使我删除request.testDevices = ...,我也无法获得任何广告。

  

“Google”:要在此设备上投放测试广告,请致电:request.testDevices = [NSArray arrayWithObjects:GAD_SIMULATOR_ID,nil];

3 个答案:

答案 0 :(得分:11)

原因是我没有成功加载请求并将GADBannerView添加到我的视图层次结构中。日志To get test ads on this device, call: request.testDevices = [NSArray arrayWithObjects:GAD_SIMULATOR_ID, nil];将始终显示。我认为这应该是告诉开发人员如何获得测试广告的提示。

答案 1 :(得分:4)

你试过吗

request.testing = YES;

请注意,您需要在调试模式下运行才能获得测试广告。实际上我甚至不使用testDevices属性,它的工作原理。

我认为如果你没有指定测试设备,它会在每个设备上获得测试广告,如果你已经在调试模式下进行了编译。

答案 2 :(得分:2)

在调试控制台中,您应该看到类似这样的消息:

>     <Google> To get test ads on this device, call: request.testDevices = @[ @"4d245710e0069eb2e3937c54e53e82c8" ];

然后你可以在你的代码中设置它:

  

self.adsView.adUnitID = adUnitId;
  self.adsView.rootViewController =   自我;
  DFPRequest * request = [DFPRequest request];

     

request.testDevices = @ [@&#34; 4d245710e0069eb2e3937c54e53e82c8&#34;];

     

[self.adsView loadRequest:request];