GoogleInteractiveMediaAds Framework Reference

  • This documentation details the protocols available globally for the Interactive Media Ads SDK for iOS.

  • These protocols facilitate interactions between your app and the IMA SDK, handling events such as ad loading, playback, and companion ads.

  • Key protocols include IMAAdsLoaderDelegate, IMAAdsManagerDelegate, IMACompanionDelegate, and IMAVideoDisplayDelegate for managing ad interactions.

  • Protocols such as IMAContentPlayhead enable content progress tracking, while IMASecureSignalsAdapter facilitates the inclusion of secure signals in auctions.

  • Developers can implement these protocols to customize ad behavior and integrate the IMA SDK into their iOS applications.

Protocols

The following protocols are available globally.

  • A callback protocol for IMAAVPlayerVideoDisplayDelegate.

    Declaration

    Swift

    protocol IMAAVPlayerVideoDisplayDelegate : NSObjectProtocol

    Objective-C

    @protocol IMAAVPlayerVideoDisplayDelegate <NSObject>
  • Groups various properties of the ad player.

    Declaration

    Swift

    protocol IMAAdPlaybackInfo : NSObjectProtocol

    Objective-C

    @protocol IMAAdPlaybackInfo <NSObject>
  • Delegate object that receives state change callbacks from IMAAdsLoader.

    Declaration

    Swift

    protocol IMAAdsLoaderDelegate

    Objective-C

    @protocol IMAAdsLoaderDelegate
  • A callback protocol for IMAAdsManager.

    Declaration

    Swift

    protocol IMAAdsManagerDelegate

    Objective-C

    @protocol IMAAdsManagerDelegate
  • Signals that a link has been opened/closed. For an external app (Mobile Safari/App deep link), the delegate is only notified before opening.

    Declaration

    Swift

    protocol IMALinkOpenerDelegate : NSObjectProtocol

    Objective-C

    @protocol IMALinkOpenerDelegate <NSObject>
  • Delegate to receive events from the companion ad slot.

    Declaration

    Swift

    protocol IMACompanionDelegate : NSObjectProtocol

    Objective-C

    @protocol IMACompanionDelegate <NSObject>
  • Defines an interface for a class that tracks video content progress and exposes a key value observable property |currentTime|. The SDK provides an implementation for tracking AVPlayer-based playback in the IMAAVPlayerContentPlayhead. Publishers can supply their own implementation by implementing this interface and this way support any other video playback implementation they might have.

    Declaration

    Swift

    protocol IMAContentPlayhead

    Objective-C

    @protocol IMAContentPlayhead
  • Adapter that provides secure signal(3rd party signal only) to the IMA SDK to be included in an

    • auction.

    Declaration

    Swift

    protocol IMASecureSignalsAdapter : NSObjectProtocol

    Objective-C

    @protocol IMASecureSignalsAdapter <NSObject>
  • A callback protocol for IMAStreamManager.

    Declaration

    Swift

    protocol IMAStreamManagerDelegate

    Objective-C

    @protocol IMAStreamManagerDelegate
  • Delegate object that receives state change callbacks from IMAVideoDisplay.

    Declaration

    Swift

    protocol IMAVideoDisplayDelegate : NSObjectProtocol

    Objective-C

    @protocol IMAVideoDisplayDelegate <NSObject>
  • Declares a simple video display class used for ad playback.

    Declaration

    Swift

    protocol IMAVideoDisplay : IMAAdPlaybackInfo

    Objective-C

    @protocol IMAVideoDisplay <IMAAdPlaybackInfo>