GoogleInteractiveMediaAds Framework Reference

Classes

The following classes are available globally.

  • An implementation of IMAContentPlayhead for AVPlayer. Use this class to provide content tracking if your content player of choice is an AVPlayer or its subclass.

    Declaration

    Swift

    class IMAAVPlayerContentPlayhead : NSObject, IMAContentPlayhead

    Objective-C

    @interface IMAAVPlayerContentPlayhead : NSObject <IMAContentPlayhead>
  • An implementation of the IMAVideoDisplay protocol. This object is intended to be initialized with the content player, and will reuse the player for playing ads.

    Declaration

    Swift

    class IMAAVPlayerVideoDisplay : NSObject, IMAVideoDisplay

    Objective-C

    @interface IMAAVPlayerVideoDisplay : NSObject <IMAVideoDisplay>
  • Data object representing a single ad.

    Declaration

    Swift

    class IMAAd : NSObject

    Objective-C

    @interface IMAAd : NSObject
  • The IMAAdDisplayContainer is responsible for managing the ad container view and companion ad slots used for ad playback.

    Declaration

    Swift

    class IMAAdDisplayContainer : NSObject

    Objective-C

    @interface IMAAdDisplayContainer : NSObject
  • Surfaces an error that occurred during ad loading or playing.

    Declaration

    Swift

    class IMAAdError : NSObject

    Objective-C

    @interface IMAAdError : NSObject
  • Simple data class used to transport ad playback information.

    Declaration

    Swift

    class IMAAdEvent : NSObject

    Objective-C

    @interface IMAAdEvent : NSObject
  • Simple data object containing podding metadata.

    Declaration

    Swift

    class IMAAdPodInfo : NSObject

    Objective-C

    @interface IMAAdPodInfo : NSObject
  • Ad data that is returned when the ads loader loads the ad.

    Declaration

    Swift

    class IMAAdsLoadedData : NSObject

    Objective-C

    @interface IMAAdsLoadedData : NSObject
  • Ad error data that is returned when the ads loader fails to load the ad.

    Declaration

    Swift

    class IMAAdLoadingErrorData : NSObject

    Objective-C

    @interface IMAAdLoadingErrorData : NSObject
  • The IMAAdsLoader class allows the requesting of ads from the ad server. Use the delegate to receive the loaded ads or loading error in case of failure.

    Declaration

    Swift

    class IMAAdsLoader : NSObject

    Objective-C

    @interface IMAAdsLoader : NSObject
  • The IMAAdsManager class is responsible for playing ads.

    Declaration

    Swift

    class IMAAdsManager : NSObject

    Objective-C

    @interface IMAAdsManager : NSObject
  • Set of properties that influence how ads are rendered.

    Declaration

    Swift

    class IMAAdsRenderingSettings : NSObject

    Objective-C

    @interface IMAAdsRenderingSettings : NSObject
  • Data class describing the ad request.

    Declaration

    Swift

    class IMAAdsRequest : NSObject

    Objective-C

    @interface IMAAdsRequest : NSObject
  • An object that holds data corresponding to the companion ad.

    Declaration

    Swift

    class IMACompanionAd : NSObject

    Objective-C

    @interface IMACompanionAd : NSObject
  • Ad slot for companion ads. The SDK will put a subview inside the provided UIView container. The companion will be matched to the width and height provided here. This class cannot be instantiated on tvOS, where companion ads are not available.

    Declaration

    Swift

    class IMACompanionAdSlot : NSObject

    Objective-C

    @interface IMACompanionAdSlot : NSObject
  • Data object representation of a cuepoint for a single ad break.

    Declaration

    Swift

    class IMACuepoint : NSObject

    Objective-C

    @interface IMACuepoint : NSObject
  • Undocumented

    Declaration

    Swift

    class IMAPictureInPictureProxy : NSProxy, AVPictureInPictureControllerDelegate, AVPlayerViewControllerDelegate

    Objective-C

    @interface IMAPictureInPictureProxy : NSProxy <AVPictureInPictureControllerDelegate,
                                                   AVPlayerViewControllerDelegate>
    #endif
    #if TARGET_OS_TV
    @interface IMAPictureInPictureProxy : NSObject
    #endif
    /**
     *  Whether or not Picture-in-Picture is currently active.
     */
    @property(nonatomic, readonly, getter=isPictureInPictureActive) BOOL pictureInPictureActive;
    
    /**
     *  Whether or not Picture-in-Picture is supported on this device.
     */
    + (BOOL)isPictureInPictureSupported;
    
    /**
     *  Instantiates an IMAPictureInPictureProxy that will proxy delegate
     *  messages from an AVPictureInPictureController, and forward them
     *  to the AVPictureInPictureControllerDelegate passed on init.
     *
     *  @param delegate the AVPictureInPictureControllerDelegate
     *
     *  @return an IMAPictureInPictureProxy instance
     */
    - (instancetype)initWithAVPictureInPictureControllerDelegate:
        (id<AVPictureInPictureControllerDelegate>)delegate __TVOS_UNAVAILABLE;
    
    /**
     *  Instantiates an IMAPictureInPictureProxy that will proxy delegate
     *  messages from an AVPlayerViewController, and forward them to the
     *  AVPlayerViewControllerDelegate passed on init.
     *
     *  @param delegate the AVPlayerViewControllerDelegate
     *
     *  @return an IMAPictureInPictureProxy instance
     */
    - (instancetype)initWithAVPlayerViewControllerDelegate:
        (id<AVPlayerViewControllerDelegate>)delegate __TVOS_UNAVAILABLE;
    
    @end
  • The IMASettings class stores SDK wide settings.

    Declaration

    Swift

    class IMASettings : NSObject, NSCopying

    Objective-C

    @interface IMASettings : NSObject <NSCopying>
  • The IMAStreamManager class is responsible for playing streams.

    Declaration

    Swift

    class IMAStreamManager : NSObject

    Objective-C

    @interface IMAStreamManager : NSObject
  • Data class describing the stream request.

    Declaration

    Swift

    class IMAStreamRequest : NSObject

    Objective-C

    @interface IMAStreamRequest : NSObject
  • Simple data object containing universal ad ID information.

    Declaration

    Swift

    class IMAUniversalAdID : NSObject

    Objective-C

    @interface IMAUniversalAdID : NSObject