GoogleInteractiveMediaAds Framework Reference
Stay organized with collections
Save and categorize content based on your preferences.
IMAAdEventType
enum IMAAdEventType : NSInteger {}
Different event types sent by the IMAAdsManager to its delegate.
-
Declaration
Swift
case AD_BREAK_READY = 0
Objective-C
kIMAAdEvent_AD_BREAK_READY
-
Ad break will not play back any ads.
Declaration
Swift
case AD_BREAK_FETCH_ERROR = 1
Objective-C
kIMAAdEvent_AD_BREAK_FETCH_ERROR
-
Fired the first time each ad break ends. Applications must reenable seeking
when this occurs (only used for dynamic ad insertion).
Declaration
Swift
case AD_BREAK_ENDED = 2
Objective-C
kIMAAdEvent_AD_BREAK_ENDED
-
Fired first time each ad break begins playback. If an ad break is watched
subsequent times this will not be fired. Applications must disable seeking
when this occurs (only used for dynamic ad insertion).
Declaration
Swift
case AD_BREAK_STARTED = 3
Objective-C
kIMAAdEvent_AD_BREAK_STARTED
-
Fired every time the stream switches from advertising or slate to content.
This will be fired even when an ad is played a second time or when seeking
into an ad (only used for dynamic ad insertion).
Declaration
Swift
case AD_PERIOD_ENDED = 4
Objective-C
kIMAAdEvent_AD_PERIOD_ENDED
-
Fired every time the stream switches from content to advertising or slate.
This will be fired even when an ad is played a second time or when seeking
into an ad (only used for dynamic ad insertion).
Declaration
Swift
case AD_PERIOD_STARTED = 5
Objective-C
kIMAAdEvent_AD_PERIOD_STARTED
-
All valid ads managed by the ads manager have completed or the ad response
did not return any valid ads.
Declaration
Swift
case ALL_ADS_COMPLETED = 6
Objective-C
kIMAAdEvent_ALL_ADS_COMPLETED
-
Declaration
Objective-C
kIMAAdEvent_CLICKED
-
Declaration
Objective-C
kIMAAdEvent_COMPLETE
-
Cuepoints changed for VOD stream (only used for dynamic ad insertion).
For this event, the IMAAdEvent.adData
property contains a list of
IMACuepoint
s at IMAAdEvent.adData[@"cuepoints"]
.
Declaration
Swift
case CUEPOINTS_CHANGED = 9
Objective-C
kIMAAdEvent_CUEPOINTS_CHANGED
-
The user has closed the icon fallback image dialog. This may be a good time to resume ad
playback, which the SDK autopaused on icon tap. This event only fires for tvOS.
Declaration
Swift
case ICON_FALLBACK_IMAGE_CLOSED = 10
Objective-C
kIMAAdEvent_ICON_FALLBACK_IMAGE_CLOSED
-
The user has tapped an ad icon. On iOS, the SDK will navigate to the landing page. On tvOS, the
SDK will present a modal dialog containing the VAST icon fallback image.
Declaration
Swift
case ICON_TAPPED = 11
Objective-C
kIMAAdEvent_ICON_TAPPED
-
First quartile of a linear ad was reached.
Declaration
Swift
case FIRST_QUARTILE = 12
Objective-C
kIMAAdEvent_FIRST_QUARTILE
-
Declaration
Objective-C
kIMAAdEvent_LOADED
-
A log event for the ads being played. These are typically non fatal errors.
Declaration
Objective-C
kIMAAdEvent_LOG
-
Midpoint of a linear ad was reached.
Declaration
Objective-C
kIMAAdEvent_MIDPOINT
-
Declaration
Objective-C
kIMAAdEvent_PAUSE
-
Declaration
Objective-C
kIMAAdEvent_RESUME
-
Declaration
Objective-C
kIMAAdEvent_SKIPPED
-
Declaration
Objective-C
kIMAAdEvent_STARTED
-
Stream request has loaded (only used for dynamic ad insertion).
Declaration
Swift
case STREAM_LOADED = 20
Objective-C
kIMAAdEvent_STREAM_LOADED
-
Stream has started playing (only used for dynamic ad insertion). Start
Picture-in-Picture here if applicable.
Declaration
Swift
case STREAM_STARTED = 21
Objective-C
kIMAAdEvent_STREAM_STARTED
-
Declaration
Objective-C
kIMAAdEvent_TAPPED
-
Third quartile of a linear ad was reached.
Declaration
Swift
case THIRD_QUARTILE = 23
Objective-C
kIMAAdEvent_THIRD_QUARTILE
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-08-20 UTC.
[null,null,["Last updated 2025-08-20 UTC."],[[["\u003cp\u003e\u003ccode\u003eIMAAdEventType\u003c/code\u003e is an enum defining different event types sent by the IMAAdsManager to its delegate.\u003c/p\u003e\n"],["\u003cp\u003eThese events provide signals for ad playback states like starting, ending, pausing, resuming, skipping, and various quartile points.\u003c/p\u003e\n"],["\u003cp\u003eEvents also indicate ad breaks, periods, loading, clicks, and overall ad completion.\u003c/p\u003e\n"],["\u003cp\u003eSpecific events are designed for dynamic ad insertion in VOD streams, including cue point changes and stream interactions.\u003c/p\u003e\n"],["\u003cp\u003eFor tvOS, \u003ccode\u003eIMAAdEventType\u003c/code\u003e includes events for icon interactions, such as tapping and closing the fallback image.\u003c/p\u003e\n"]]],[],null,["# GoogleInteractiveMediaAds Framework Reference\n\nIMAAdEventType\n==============\n\n enum IMAAdEventType : NSInteger {}\n\nDifferent event types sent by the IMAAdsManager to its delegate.\n- `\n ``\n ``\n `\n\n ### [kIMAAdEvent_AD_BREAK_READY](#/c:@E@IMAAdEventType@kIMAAdEvent_AD_BREAK_READY)\n\n `\n ` \n Ad break ready. \n\n #### Declaration\n\n Swift \n\n case AD_BREAK_READY = 0\n\n Objective-C \n\n kIMAAdEvent_AD_BREAK_READY\n\n- `\n ``\n ``\n `\n\n ### [kIMAAdEvent_AD_BREAK_FETCH_ERROR](#/c:@E@IMAAdEventType@kIMAAdEvent_AD_BREAK_FETCH_ERROR)\n\n `\n ` \n Ad break will not play back any ads. \n\n #### Declaration\n\n Swift \n\n case AD_BREAK_FETCH_ERROR = 1\n\n Objective-C \n\n kIMAAdEvent_AD_BREAK_FETCH_ERROR\n\n- `\n ``\n ``\n `\n\n ### [kIMAAdEvent_AD_BREAK_ENDED](#/c:@E@IMAAdEventType@kIMAAdEvent_AD_BREAK_ENDED)\n\n `\n ` \n Fired the first time each ad break ends. Applications must reenable seeking\n when this occurs (only used for dynamic ad insertion). \n\n #### Declaration\n\n Swift \n\n case AD_BREAK_ENDED = 2\n\n Objective-C \n\n kIMAAdEvent_AD_BREAK_ENDED\n\n- `\n ``\n ``\n `\n\n ### [kIMAAdEvent_AD_BREAK_STARTED](#/c:@E@IMAAdEventType@kIMAAdEvent_AD_BREAK_STARTED)\n\n `\n ` \n Fired first time each ad break begins playback. If an ad break is watched\n subsequent times this will not be fired. Applications must disable seeking\n when this occurs (only used for dynamic ad insertion). \n\n #### Declaration\n\n Swift \n\n case AD_BREAK_STARTED = 3\n\n Objective-C \n\n kIMAAdEvent_AD_BREAK_STARTED\n\n- `\n ``\n ``\n `\n\n ### [kIMAAdEvent_AD_PERIOD_ENDED](#/c:@E@IMAAdEventType@kIMAAdEvent_AD_PERIOD_ENDED)\n\n `\n ` \n Fired every time the stream switches from advertising or slate to content.\n This will be fired even when an ad is played a second time or when seeking\n into an ad (only used for dynamic ad insertion). \n\n #### Declaration\n\n Swift \n\n case AD_PERIOD_ENDED = 4\n\n Objective-C \n\n kIMAAdEvent_AD_PERIOD_ENDED\n\n- `\n ``\n ``\n `\n\n ### [kIMAAdEvent_AD_PERIOD_STARTED](#/c:@E@IMAAdEventType@kIMAAdEvent_AD_PERIOD_STARTED)\n\n `\n ` \n Fired every time the stream switches from content to advertising or slate.\n This will be fired even when an ad is played a second time or when seeking\n into an ad (only used for dynamic ad insertion). \n\n #### Declaration\n\n Swift \n\n case AD_PERIOD_STARTED = 5\n\n Objective-C \n\n kIMAAdEvent_AD_PERIOD_STARTED\n\n- `\n ``\n ``\n `\n\n ### [kIMAAdEvent_ALL_ADS_COMPLETED](#/c:@E@IMAAdEventType@kIMAAdEvent_ALL_ADS_COMPLETED)\n\n `\n ` \n All valid ads managed by the ads manager have completed or the ad response\n did not return any valid ads. \n\n #### Declaration\n\n Swift \n\n case ALL_ADS_COMPLETED = 6\n\n Objective-C \n\n kIMAAdEvent_ALL_ADS_COMPLETED\n\n- `\n ``\n ``\n `\n\n ### [kIMAAdEvent_CLICKED](#/c:@E@IMAAdEventType@kIMAAdEvent_CLICKED)\n\n `\n ` \n Ad clicked. \n\n #### Declaration\n\n Swift \n\n case CLICKED = 7\n\n Objective-C \n\n kIMAAdEvent_CLICKED\n\n- `\n ``\n ``\n `\n\n ### [kIMAAdEvent_COMPLETE](#/c:@E@IMAAdEventType@kIMAAdEvent_COMPLETE)\n\n `\n ` \n Single ad has finished. \n\n #### Declaration\n\n Swift \n\n case COMPLETE = 8\n\n Objective-C \n\n kIMAAdEvent_COMPLETE\n\n- `\n ``\n ``\n `\n\n ### [kIMAAdEvent_CUEPOINTS_CHANGED](#/c:@E@IMAAdEventType@kIMAAdEvent_CUEPOINTS_CHANGED)\n\n `\n ` \n Cuepoints changed for VOD stream (only used for dynamic ad insertion).\n For this event, the [IMAAdEvent.adData](../Classes/IMAAdEvent.html#/c:objc(cs)IMAAdEvent(py)adData) property contains a list of\n [IMACuepoint](../Classes/IMACuepoint.html)s at `IMAAdEvent.adData[@\"cuepoints\"]`. \n\n #### Declaration\n\n Swift \n\n case CUEPOINTS_CHANGED = 9\n\n Objective-C \n\n kIMAAdEvent_CUEPOINTS_CHANGED\n\n- `\n ``\n ``\n `\n\n ### [kIMAAdEvent_ICON_FALLBACK_IMAGE_CLOSED](#/c:@E@IMAAdEventType@kIMAAdEvent_ICON_FALLBACK_IMAGE_CLOSED)\n\n `\n ` \n The user has closed the icon fallback image dialog. This may be a good time to resume ad\n playback, which the SDK autopaused on icon tap. This event only fires for tvOS. \n\n #### Declaration\n\n Swift \n\n case ICON_FALLBACK_IMAGE_CLOSED = 10\n\n Objective-C \n\n kIMAAdEvent_ICON_FALLBACK_IMAGE_CLOSED\n\n- `\n ``\n ``\n `\n\n ### [kIMAAdEvent_ICON_TAPPED](#/c:@E@IMAAdEventType@kIMAAdEvent_ICON_TAPPED)\n\n `\n ` \n The user has tapped an ad icon. On iOS, the SDK will navigate to the landing page. On tvOS, the\n SDK will present a modal dialog containing the VAST icon fallback image. \n\n #### Declaration\n\n Swift \n\n case ICON_TAPPED = 11\n\n Objective-C \n\n kIMAAdEvent_ICON_TAPPED\n\n- `\n ``\n ``\n `\n\n ### [kIMAAdEvent_FIRST_QUARTILE](#/c:@E@IMAAdEventType@kIMAAdEvent_FIRST_QUARTILE)\n\n `\n ` \n First quartile of a linear ad was reached. \n\n #### Declaration\n\n Swift \n\n case FIRST_QUARTILE = 12\n\n Objective-C \n\n kIMAAdEvent_FIRST_QUARTILE\n\n- `\n ``\n ``\n `\n\n ### [kIMAAdEvent_LOADED](#/c:@E@IMAAdEventType@kIMAAdEvent_LOADED)\n\n `\n ` \n An ad was loaded. \n\n #### Declaration\n\n Swift \n\n case LOADED = 13\n\n Objective-C \n\n kIMAAdEvent_LOADED\n\n- `\n ``\n ``\n `\n\n ### [kIMAAdEvent_LOG](#/c:@E@IMAAdEventType@kIMAAdEvent_LOG)\n\n `\n ` \n A log event for the ads being played. These are typically non fatal errors. \n\n #### Declaration\n\n Swift \n\n case LOG = 14\n\n Objective-C \n\n kIMAAdEvent_LOG\n\n- `\n ``\n ``\n `\n\n ### [kIMAAdEvent_MIDPOINT](#/c:@E@IMAAdEventType@kIMAAdEvent_MIDPOINT)\n\n `\n ` \n Midpoint of a linear ad was reached. \n\n #### Declaration\n\n Swift \n\n case MIDPOINT = 15\n\n Objective-C \n\n kIMAAdEvent_MIDPOINT\n\n- `\n ``\n ``\n `\n\n ### [kIMAAdEvent_PAUSE](#/c:@E@IMAAdEventType@kIMAAdEvent_PAUSE)\n\n `\n ` \n Ad paused. \n\n #### Declaration\n\n Swift \n\n case PAUSE = 16\n\n Objective-C \n\n kIMAAdEvent_PAUSE\n\n- `\n ``\n ``\n `\n\n ### [kIMAAdEvent_RESUME](#/c:@E@IMAAdEventType@kIMAAdEvent_RESUME)\n\n `\n ` \n Ad resumed. \n\n #### Declaration\n\n Swift \n\n case RESUME = 17\n\n Objective-C \n\n kIMAAdEvent_RESUME\n\n- `\n ``\n ``\n `\n\n ### [kIMAAdEvent_SKIPPED](#/c:@E@IMAAdEventType@kIMAAdEvent_SKIPPED)\n\n `\n ` \n Ad has skipped. \n\n #### Declaration\n\n Swift \n\n case SKIPPED = 18\n\n Objective-C \n\n kIMAAdEvent_SKIPPED\n\n- `\n ``\n ``\n `\n\n ### [kIMAAdEvent_STARTED](#/c:@E@IMAAdEventType@kIMAAdEvent_STARTED)\n\n `\n ` \n Ad has started. \n\n #### Declaration\n\n Swift \n\n case STARTED = 19\n\n Objective-C \n\n kIMAAdEvent_STARTED\n\n- `\n ``\n ``\n `\n\n ### [kIMAAdEvent_STREAM_LOADED](#/c:@E@IMAAdEventType@kIMAAdEvent_STREAM_LOADED)\n\n `\n ` \n Stream request has loaded (only used for dynamic ad insertion). \n\n #### Declaration\n\n Swift \n\n case STREAM_LOADED = 20\n\n Objective-C \n\n kIMAAdEvent_STREAM_LOADED\n\n- `\n ``\n ``\n `\n\n ### [kIMAAdEvent_STREAM_STARTED](#/c:@E@IMAAdEventType@kIMAAdEvent_STREAM_STARTED)\n\n `\n ` \n Stream has started playing (only used for dynamic ad insertion). Start\n Picture-in-Picture here if applicable. \n\n #### Declaration\n\n Swift \n\n case STREAM_STARTED = 21\n\n Objective-C \n\n kIMAAdEvent_STREAM_STARTED\n\n- `\n ``\n ``\n `\n\n ### [kIMAAdEvent_TAPPED](#/c:@E@IMAAdEventType@kIMAAdEvent_TAPPED)\n\n `\n ` \n Ad tapped. \n\n #### Declaration\n\n Swift \n\n case TAPPED = 22\n\n Objective-C \n\n kIMAAdEvent_TAPPED\n\n- `\n ``\n ``\n `\n\n ### [kIMAAdEvent_THIRD_QUARTILE](#/c:@E@IMAAdEventType@kIMAAdEvent_THIRD_QUARTILE)\n\n `\n ` \n Third quartile of a linear ad was reached. \n\n #### Declaration\n\n Swift \n\n case THIRD_QUARTILE = 23\n\n Objective-C \n\n kIMAAdEvent_THIRD_QUARTILE"]]