无法让 iad/adMob 在设备上进行调解

Can't get iad/adMob to mediate on device

我正在使用 GoogleMobileAdsSDKiOS 7.0.0。我按照 Google 的 AdMob 说明设置 AdMob,然后按照中介说明进行操作。 iAd/AdMob 的调解在模拟器上运行良好,但在设备上运行不佳。 iAd 几乎从不失败,而且当它执行 AdMob 测试时,横幅从不加载。

 - (void)viewDidLoad
{

[super viewDidLoad];



self.adView = [[ADBannerView alloc] initWithFrame:CGRectMake(0, 60, 320, 50)];  
self.adView.delegate = self;

[self.view addSubview:adView]; 
}



 -(void)bannerView:(ADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error{

self.adView.hidden=YES;

NSLog(@"Google Mobile Ads SDK version: %@7.0.0", [GADRequest sdkVersion]);

self.adBanner_=[[GADBannerView alloc]initWithFrame:CGRectMake(0, 0, 320, 50)];

self.adBanner_.adUnitID = @"my-ID";   

self.adBanner_.rootViewController=self;

[self.view addSubview:self.adBanner_];

GADRequest *request =[GADRequest request];

request.testDevices = @[ @"2077ef9a63d2b398840261c8221a0c9b"];    

[self.adBanner_ loadRequest:request];

}

我还尝试了 bannerViewDidLoadAd 来显示 adView 加载,但这只会让 AdMob 和 iAd 同时加载,所以我不能使用 bannerViewDidLoadAd。

我不明白为什么 AdMob/iAd 不能在设备上进行调解,但在模拟器上却能完美运行。无法弄清楚为什么 AdMob 从不在设备上加载测试横幅。

您应该在 viewDidLoad 中隐藏 adview,然后在 bannerViewDidLoadAd 中取消隐藏它。但是,您的代码看起来不错。根据我使用 iad/admob 中介的经验,iAd 在实际设备上失败所需的时间比在模拟器上要长。在实际设备上,您会看到在 iAd 失败后 AdMob 将加载,但我会在它发生之前花费一些时间,而不是在 iAd 失败后立即加载 AdMob。在设备上不是这样。我就是这样。测试一下,稍等一下。