2015-02-07 70 views
0

我正在使用GoogleMobileAdsSDKiOS 7.0.0。我遵循Google的AdMob設置AdMob的說明,然後遵循調解說明進行操作。與iAd/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從未在設備上加載測試橫幅。

+0

對於AdMob,讓您正確獲取設備ID。 – user523234 2015-02-08 17:53:26

+0

如果你只實現admob,它顯示在設備上? – user523234 2015-02-08 19:42:55

+0

調解問題。如果我添加上面的adBanner代碼,它會顯示在ViewDidLoad中。但隨後它與iAd同時出現在一起。顯然,這不是我想要的調解。 – Alex 2015-02-08 22:04:48

回答

1

您應該在viewDidLoad中隱藏adview,然後在bannerViewDidLoadAd中將其取消隱藏。但是,你的代碼看起來很好。從我使用iad/admob中介的經驗來看,iAd在實際設備上的失敗時間比在模擬器上的時間要長。在實際設備上,您會在iAd失敗後看到AdMob將加載,但在發生這種情況之前需要時間,而不是在iAd出現故障時立即加載模擬器。不是這樣的設備。這就是我的方式。測試它並等一下。

+0

你是對的,我等了幾分鐘,iAd在AdMob出現的時候消失了。但爲什麼需要這麼長時間? – Alex 2015-02-12 19:44:04