GoogleMobileAds Framework Reference

Protocols

The following protocols are available globally.

  • Base ad loader delegate protocol. Ad types provide extended protocols that declare methods to handle successful ad loads.

    Declaration

    Swift

    protocol GADAdLoaderDelegate : NSObjectProtocol

    Objective-C

    @protocol GADAdLoaderDelegate <NSObject>
  • Protocol for ads that provide ad metadata.

    Declaration

    Swift

    protocol GADAdMetadataProvider : NSObjectProtocol

    Objective-C

    @protocol GADAdMetadataProvider <NSObject>
  • Delegate protocol for receiving ad metadata change messages from a GADAdMetadataProvider.

    Declaration

    Swift

    protocol GADAdMetadataDelegate : NSObjectProtocol

    Objective-C

    @protocol GADAdMetadataDelegate <NSObject>
  • An object implementing this protocol contains information set by the publisher on the client device for a particular ad network.

    Ad networks should create an ‘extras’ object implementing this protocol for their publishers to use.

    Declaration

    Swift

    protocol GADAdNetworkExtras : NSObjectProtocol

    Objective-C

    @protocol GADAdNetworkExtras <NSObject>
  • The class implementing this protocol will be notified when the GADBannerView’s ad content changes size. Any views that may be affected by the banner size change will have time to adjust.

    Declaration

    Swift

    protocol GADAdSizeDelegate : NSObjectProtocol

    Objective-C

    @protocol GADAdSizeDelegate <NSObject>
  • Implement your app event within these methods. The delegate will be notified when the SDK receives an app event message from the ad.

    Declaration

    Swift

    protocol GADAppEventDelegate : NSObjectProtocol

    Objective-C

    @protocol GADAppEventDelegate <NSObject>
  • A set of methods to inform the delegate of audio video manager events.

    Declaration

    Swift

    protocol GADAudioVideoManagerDelegate : NSObjectProtocol

    Objective-C

    @protocol GADAudioVideoManagerDelegate <NSObject>
  • Delegate methods for receiving GADBannerView state change messages such as ad request status and ad click lifecycle.

    Declaration

    Swift

    protocol GADBannerViewDelegate : NSObjectProtocol

    Objective-C

    @protocol GADBannerViewDelegate <NSObject>
  • The banner custom event protocol. Your banner custom event handler must implement this protocol.

    Declaration

    Swift

    protocol GADCustomEventBanner : NSObjectProtocol

    Objective-C

    @protocol GADCustomEventBanner <NSObject>
  • Call back to this delegate in your custom event. You must call customEventBanner:didReceiveAd: when there is an ad to show, or customEventBanner:didFailAd: when there is no ad to show. Otherwise, if enough time passed (several seconds) after the SDK called the requestBannerAd: method of your custom event, the mediation SDK will consider the request timed out, and move on to the next ad network.

    Declaration

    Swift

    protocol GADCustomEventBannerDelegate : NSObjectProtocol

    Objective-C

    @protocol GADCustomEventBannerDelegate <NSObject>
  • The interstitial custom event protocol. Your interstitial custom event handler must implement this protocol.

    Declaration

    Swift

    protocol GADCustomEventInterstitial : NSObjectProtocol

    Objective-C

    @protocol GADCustomEventInterstitial <NSObject>
  • Call back to this delegate in your custom event. You must call customEventInterstitialDidReceiveAd: when there is an ad to show, or customEventInterstitial:didFailAd: when there is no ad to show. Otherwise, if enough time passed (several seconds) after the SDK called the requestInterstitialAdWithParameter: method of your custom event, the mediation SDK will consider the request timed out, and move on to the next ad network.

    Declaration

    Swift

    protocol GADCustomEventInterstitialDelegate : NSObjectProtocol

    Objective-C

    @protocol GADCustomEventInterstitialDelegate <NSObject>
  • Native ad custom event protocol. Your native ad custom event handler class must conform to this protocol.

    Declaration

    Swift

    protocol GADCustomEventNativeAd : NSObjectProtocol

    Objective-C

    @protocol GADCustomEventNativeAd <NSObject>
  • The delegate of the GADCustomEventNativeAd object must adopt the GADCustomEventNativeAdDelegate protocol. Methods in this protocol are used for native ad’s custom event communication with the Google Mobile Ads SDK.

    Declaration

    Swift

    protocol GADCustomEventNativeAdDelegate : NSObjectProtocol

    Objective-C

    @protocol GADCustomEventNativeAdDelegate <NSObject>
  • The delegate of a GADAdLoader object implements this protocol to receive GADCustomNativeAd ads.

    Declaration

    Swift

    protocol GADCustomNativeAdLoaderDelegate : GADAdLoaderDelegate

    Objective-C

    @protocol GADCustomNativeAdLoaderDelegate <GADAdLoaderDelegate>
  • Identifies native ad assets.

    Declaration

    Swift

    protocol GADCustomNativeAdDelegate : NSObjectProtocol

    Objective-C

    @protocol GADCustomNativeAdDelegate <NSObject>
  • Delegate for the GADDebugOptionsViewController.

    Declaration

    Swift

    protocol GADDebugOptionsViewControllerDelegate : NSObjectProtocol

    Objective-C

    @protocol GADDebugOptionsViewControllerDelegate <NSObject>
  • Protocol for ads that present full screen content.

    Declaration

    Swift

    protocol GADFullScreenPresentingAd : NSObjectProtocol

    Objective-C

    @protocol GADFullScreenPresentingAd <NSObject>
  • Delegate methods for receiving notifications about presentation and dismissal of full screen content. Full screen content covers your application’s content. The delegate may want to pause animations or time sensitive interactions. Full screen content may be presented in the following cases:

    1. A full screen ad is presented.
    2. An ad interaction opens full screen content.

    Declaration

    Swift

    protocol GADFullScreenContentDelegate : NSObjectProtocol

    Objective-C

    @protocol GADFullScreenContentDelegate <NSObject>
  • The delegate of a GADAdLoader object implements this protocol to receive GADNativeAd ads.

    Declaration

    Swift

    protocol GADNativeAdLoaderDelegate : GADAdLoaderDelegate

    Objective-C

    @protocol GADNativeAdLoaderDelegate <GADAdLoaderDelegate>
  • Identifies native ad assets.

    Declaration

    Swift

    protocol GADNativeAdDelegate : NSObjectProtocol

    Objective-C

    @protocol GADNativeAdDelegate <NSObject>
  • Delegate methods for handling native ad unconfirmed clicks.

    Declaration

    Swift

    protocol GADNativeAdUnconfirmedClickDelegate : NSObjectProtocol

    Objective-C

    @protocol GADNativeAdUnconfirmedClickDelegate <NSObject>
  • The GADVideoControllerDelegate protocol defines methods that are called by the video controller object in response to the video events that occurred throughout the lifetime of the video rendered by an ad.

    Declaration

    Swift

    protocol GADVideoControllerDelegate : NSObjectProtocol

    Objective-C

    @protocol GADVideoControllerDelegate <NSObject>
  • The delegate of a GADAdLoader object must conform to this protocol to receive GAMBannerViews.

    Declaration

    Swift

    protocol GAMBannerAdLoaderDelegate : GADAdLoaderDelegate

    Objective-C

    @protocol GAMBannerAdLoaderDelegate <GADAdLoaderDelegate>
  • Ad network adapter protocol.

    Declaration

    Swift

    protocol GADMAdNetworkAdapter : NSObjectProtocol

    Objective-C

    @protocol GADMAdNetworkAdapter <NSObject>
  • Ad network adapters interact with the mediation SDK using an object that implements the GADMAdNetworkConnector protocol. The connector object can be used to obtain necessary information for ad requests, and to call back to the mediation SDK on ad request returns and user interactions.

    Declaration

    Swift

    protocol GADMAdNetworkConnector : GADMediationAdRequest

    Objective-C

    @protocol GADMAdNetworkConnector <GADMediationAdRequest>
  • Your adapter must conform to this protocol to provide reward based video ads.

    Declaration

    Swift

    protocol GADMRewardBasedVideoAdNetworkAdapter : NSObjectProtocol

    Objective-C

    @protocol GADMRewardBasedVideoAdNetworkAdapter <NSObject>
  • Reward based video ad network adapters interact with the mediation SDK using an object that conforms to the GADMRewardBasedVideoAdNetworkConnector protocol. The connector object can be used to obtain information for ad requests and to call back to the mediation SDK on ad responses and user interactions.

    Declaration

    Swift

    protocol GADMRewardBasedVideoAdNetworkConnector : GADMediationAdRequest

    Objective-C

    @protocol GADMRewardBasedVideoAdNetworkConnector <GADMediationAdRequest>
  • Provides methods used for constructing native ads. The adapter must return an object conforming to this protocol for native ad requests.

    Declaration

    Swift

    protocol GADMediatedUnifiedNativeAd : NSObjectProtocol

    Objective-C

    @protocol GADMediatedUnifiedNativeAd <NSObject>
  • Rendered ad. Objects conforming to this protocol are created by the adapter and returned to the Google Mobile Ads SDK via the adapter’s render method completion handler.

    Declaration

    Swift

    protocol GADMediationAd : NSObjectProtocol

    Objective-C

    @protocol GADMediationAd <NSObject>
  • Reports information to the Google Mobile Ads SDK from the adapter. Adapters receive an ad event delegate when they provide a GADMediationAd by calling a render completion handler.

    Declaration

    Swift

    protocol GADMediationAdEventDelegate : NSObjectProtocol

    Objective-C

    @protocol GADMediationAdEventDelegate <NSObject>
  • Reports banner related information to the Google Mobile Ads SDK from the adapter.

    Declaration

    Swift

    protocol GADMediationBannerAdEventDelegate : GADMediationAdEventDelegate

    Objective-C

    @protocol GADMediationBannerAdEventDelegate <GADMediationAdEventDelegate>
  • Reports interstitial related information to the Google Mobile Ads SDK from the adapter.

    Declaration

    Swift

    protocol GADMediationInterstitialAdEventDelegate : GADMediationAdEventDelegate

    Objective-C

    @protocol GADMediationInterstitialAdEventDelegate <GADMediationAdEventDelegate>
  • Reports native related information to the Google Mobile Ads SDK from the adapter.

    Declaration

    Swift

    protocol GADMediationNativeAdEventDelegate : GADMediationAdEventDelegate

    Objective-C

    @protocol GADMediationNativeAdEventDelegate <GADMediationAdEventDelegate>
  • Reports rewarded related information to the Google Mobile Ads SDK from the adapter.

    Declaration

    Swift

    protocol GADMediationRewardedAdEventDelegate : GADMediationAdEventDelegate

    Objective-C

    @protocol GADMediationRewardedAdEventDelegate <GADMediationAdEventDelegate>
  • Provides information which can be used for making ad requests during mediation.

    Declaration

    Swift

    protocol GADMediationAdRequest : NSObjectProtocol

    Objective-C

    @protocol GADMediationAdRequest <NSObject>
  • Receives messages and requests from the Google Mobile Ads SDK. Provides GMA to 3P SDK communication.

    Adapters are initialized on a background queue and should avoid using the main queue until load time.

    Declaration

    Swift

    protocol GADMediationAdapter : NSObjectProtocol

    Objective-C

    @protocol GADMediationAdapter <NSObject>
  • Rendered banner ad. Provides a single subview to add to the banner view’s view hierarchy.

    Declaration

    Swift

    protocol GADMediationBannerAd : GADMediationAd

    Objective-C

    @protocol GADMediationBannerAd <GADMediationAd>
  • Rendered interscroller ad.

    Declaration

    Swift

    protocol GADMediationInterscrollerAd : GADMediationBannerAd

    Objective-C

    @protocol GADMediationInterscrollerAd <GADMediationBannerAd>
  • Rendered interstitial ad.

    Declaration

    Swift

    protocol GADMediationInterstitialAd : GADMediationAd

    Objective-C

    @protocol GADMediationInterstitialAd <GADMediationAd>
  • Rendered native ad.

    Declaration

    Swift

    protocol GADMediationNativeAd : GADMediatedUnifiedNativeAd, GADMediationAd

    Objective-C

    @protocol GADMediationNativeAd <GADMediationAd, GADMediatedUnifiedNativeAd>
  • Rendered rewarded ad.

    Declaration

    Swift

    protocol GADMediationRewardedAd : GADMediationAd

    Objective-C

    @protocol GADMediationRewardedAd <GADMediationAd>
  • Adapter that provides signals to the Google Mobile Ads SDK to be included in an auction.

    Declaration

    Swift

    protocol GADRTBAdapter : GADMediationAdapter

    Objective-C

    @protocol GADRTBAdapter <GADMediationAdapter>