Ad load errors

Select platform: Android iOS Unity Flutter

In cases where an ad fails to load, a delegate method or completion handler is called which provides a NSError object.

For GADBannerView , the following is called:

Swift

  func 
  
 bannerView 
 ( 
 _ 
  
 bannerView 
 : 
  
 BannerView 
 , 
  
  didFailToReceiveAdWithError 
 
  
 error 
 : 
  
 Error 
 ) 
 

Objective-C

  - 
 ( 
 void 
 ) 
 bannerView: 
 ( 
 nonnull 
  
 GADBannerView 
  
 * 
 ) 
 bannerView 
  
  didFailToReceiveAdWithError 
 :( 
 nonnull 
  
 NSError 
  
 * 
 ) 
 
 error 
 ; 
 

The following example shows the information available when an ad fails to load:

Swift

  func 
  
 bannerView 
 ( 
 _ 
  
 bannerView 
 : 
  
 BannerView 
 , 
  
 didFailToReceiveAdWithError 
  
 error 
 : 
  
 Error 
 ) 
  
 { 
  
 // Gets the domain from which the error came. 
  
 let 
  
 errorDomain 
  
 = 
  
 error 
 . 
 domain 
  
 // Gets the error code. See 
  
 // https://developers.google.com/admob/ios/api/reference/Enums/GADErrorCode 
  
 // for a list of possible codes. 
  
 let 
  
 errorCode 
  
 = 
  
 error 
 . 
 code 
  
 // Gets an error message. 
  
 // For example "Account not approved yet". See 
  
 // https://support.google.com/admob/answer/9905175 for explanations of 
  
 // common errors. 
  
 let 
  
 errorMessage 
  
 = 
  
 error 
 . 
 localizedDescription 
  
 // Gets additional response information about the request. See 
  
 // https://developers.google.com/admob/ios/response-info for more information. 
  
 let 
  
 responseInfo 
  
 = 
  
 ( 
 error 
  
 as 
  
 NSError 
 ). 
 userInfo 
 [ 
 GADErrorUserInfoKeyResponseInfo 
 ] 
  
 as 
 ? 
  
 ResponseInfo 
  
 // Gets the underlyingError, if available. 
  
 let 
  
 underlyingError 
  
 = 
  
 ( 
 error 
  
 as 
  
 NSError 
 ). 
 userInfo 
 [ 
 NSUnderlyingErrorKey 
 ] 
  
 as 
 ? 
  
 Error 
  
 if 
  
 let 
  
 responseInfo 
  
 = 
  
 responseInfo 
  
 { 
  
 print 
 ( 
 "Received error with domain: 
 \( 
 errorDomain 
 ) 
 , code: 
 \( 
 errorCode 
 ) 
 ," 
  
 + 
  
 "message: 
 \( 
 errorMessage 
 ) 
 , responseInfo: 
 \( 
 responseInfo 
 ) 
 ," 
  
 + 
  
 "underlyingError: 
 \( 
 underlyingError 
 ?. 
 localizedDescription 
  
 ?? 
  
 "nil" 
 ) 
 " 
 ) 
  
 } 
 } 
 

Objective-C

  - 
 ( 
 void 
 ) 
 bannerView: 
 ( 
 GADBannerView 
  
 * 
 ) 
 bannerView 
  
 didFailToReceiveAdWithError 
 :( 
 NSError 
  
 * 
 ) 
 error 
  
 { 
  
 // Gets the domain from which the error came. 
  
 NSString 
  
 * 
 errorDomain 
  
 = 
  
 error 
 . 
 domain 
 ; 
  
 // Gets the error code. See 
  
 // https://developers.google.com/admob/ios/api/reference/Enums/GADErrorCode 
  
 // for a list of possible codes. 
  
 int 
  
 errorCode 
  
 = 
  
 error 
 . 
 code 
 ; 
  
 // Gets an error message. 
  
 // For example "Account not approved yet". See 
  
 // https://support.google.com/admob/answer/9905175 for explanations of 
  
 // common errors. 
  
 NSString 
  
 * 
 errorMessage 
  
 = 
  
 error 
 . 
 localizedDescription 
 ; 
  
 // Gets additional response information about the request. See 
  
 // https://developers.google.com/admob/ios/response-info for more 
  
 // information. 
  
 GADResponseInfo 
  
 * 
 responseInfo 
  
 = 
  
 error 
 . 
 userInfo 
 [ 
 GADErrorUserInfoKeyResponseInfo 
 ]; 
  
 // Gets the underlyingError, if available. 
  
 NSError 
  
 * 
 underlyingError 
  
 = 
  
 error 
 . 
 userInfo 
 [ 
 NSUnderlyingErrorKey 
 ]; 
  
 NSLog 
 ( 
 @"Received error with domain: %@, code: %ld, message: %@, " 
  
 @"responseInfo: %@, underlyingError: %@" 
 , 
  
 errorDomain 
 , 
  
 errorCode 
 , 
  
 errorMessage 
 , 
  
 responseInfo 
 , 
  
 underlyingError 
 . 
 localizedDescription 
 ); 
 } 
 
For errors under the domain GADErrorDomain , the localizedDescription can be looked up in the Resolve common onboarding issues article for a more detailed explanation and possible actions that can be taken to resolve the issue.
Design a Mobile Site
View Site in Mobile | Classic
Share by: