2013-01-03 35 views
5

Tôi đang sử dụng AdMob như sao lưu cho iAd, nhưng tôi đang gặp khó khăn khi tìm hiểu xem AdMob mang lại .. Với iAd tôi có thể kiểm tra với isBannerLoaded hoặc một cái gì đó, nhưng không phải với AdMob .. Dù sao, tôi đã có tất cả mọi thứ làm việc ngay bây giờ, trừ khi không có kết nối internet! Khi không thể tải quảng cáo iAd và gọi didFailToReceiveAdWithError, sau đó tôi bắt đầu AdMob. Khi thử nghiệm điều này, lý do Lỗi mà tôi đang sử dụng là "không có kết nối internet", nhưng AdMob không gọi đó là số didFailToReceiveAdWithError riêng của mình. Có vẻ như không có kết nối internet nào không phải là lỗi cho AdMob (GADBannerView*)Làm cách nào để tìm hiểu xem AdMob đã tải quảng cáo chưa?

Làm cách nào để biết GADBannerView có lỗi không?

EDIT

Được rồi, vì vậy đây là cơ bản mã tôi có:

-(void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    [self initiAdBanner]; 
    [self initAdMobBanner]; 
} 

-(void)initAdMobBanner{}//initiates variable adMobBannerView(GADBannerView) 
-(void)initiAdBanner{}//initiates variable iAdBannerView(ADBannerView) 

-(void)hideBanner:(UIView*)banner{} //hides banner if visible 
-(void)showBanner:(UIView*)banner{} //shows banner if hidden 

//blah blah 

-(void)adView:(GADBannerView*)banner didFailToReceiveAdWithError:(GADRequestError*)error 
{ 
    //Never gets called, should be called when both iAd and AdMob fails. 
    NSLog(@"AdMobBanner failed."); 
    [self hideBanner:banner]; 
} 

-(void)bannerView:(ADBannerView*)banner didFailToReceiveAdWithError:(NSError*)error 
{ 
    //If iAd fails, due to no internet connection or whatever, then it calls this. 
    [self adMobRequest]; 
    [self hideBanner:iAdBannerView]; 
    [self showBanner:adMobBannerView]; 
} 

Khi iAd thất bại và kêu gọi (ADBannerView*)didFailToReceiveAdWithError, tôi bắt đầu AdMob, nhưng khi theres không có kết nối internet, AdMob thắng không gọi số (GADBannerView*)didFailToReceiveAdWithError. Tại sao?

Trả lời

4

AdMob sẽ gọi didFailToReceiveAdWithError nếu không có kết nối internet. Hãy chắc chắn rằng bạn đăng ký đại biểu lắng nghe cho các phương thức callback:

[bannerView_ setDelegate:self];

Bạn cũng nên xem xét AdMob Mediation thay vì cố gắng để cuộn giải pháp hòa giải của riêng bạn. Bạn chỉ có thể tạo vị trí hòa giải trong giao diện người dùng AdMob, thêm vào iAd adapter vào dự án của bạn và yêu cầu quảng cáo có ID vị trí dàn xếp và quảng cáo hiển thị qua các mạng khác nhau sẽ được thực hiện cho bạn.

+0

Cảm ơn, tôi đã làm theo hướng dẫn trước đây, và họ không bao giờ đặt vào 'setDelegate: self', ghét tôi không nghĩ đến việc tìm kiếm điều đó .. Tôi không vì mọi thứ khác hoạt động hoàn hảo .. lạ. Cảm ơn! – Sti

Các vấn đề liên quan