List of content time offsets at which ad breaks are scheduled.
Array of NSNumber double values in seconds.
Empty NSArray for single ads or if no ad breaks are scheduled.
Skips the advertisement if the ad is skippable and the skip offset has been reached.
IMAAdsManager.skip() only skips ads if IMA does not render the ‘Skip ad’ button.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-01-14 UTC."],[[["\u003cp\u003eThe \u003ccode\u003eIMAAdsManager\u003c/code\u003e class is the primary tool for managing and playing ads within your content.\u003c/p\u003e\n"],["\u003cp\u003eIt provides control over ad playback, including starting, pausing, resuming, skipping, and destroying ads.\u003c/p\u003e\n"],["\u003cp\u003eYou can adjust the ad volume relative to the device volume and access information about ad playback.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eIMAAdsManager\u003c/code\u003e offers methods to handle ad breaks, allowing you to discard current or upcoming breaks.\u003c/p\u003e\n"],["\u003cp\u003eDevelopers can customize ad rendering settings and receive event notifications via the \u003ccode\u003eIMAAdsManagerDelegate\u003c/code\u003e.\u003c/p\u003e\n"]]],[],null,["# GoogleInteractiveMediaAds Framework Reference\n\nIMAAdsManager\n=============\n\n @interface IMAAdsManager : NSObject\n\nThe IMAAdsManager class is responsible for playing ads.\n- `\n ``\n ``\n `\n\n ### [delegate](#/c:objc(cs)IMAAdsManager(py)delegate)\n\n `\n ` \n The IMAAdsManagerDelegate to notify with events during ad playback. \n\n #### Declaration\n\n Swift \n\n weak var delegate: (any NSObjectProtocol & ../Protocols/IMAAdsManagerDelegate.html)? { get set }\n\n Objective-C \n\n @property (nonatomic, weak, nullable) NSObject\u003c../Protocols/IMAAdsManagerDelegate.html\u003e *delegate;\n\n- `\n ``\n ``\n `\n\n ### [adCuePoints](#/c:objc(cs)IMAAdsManager(py)adCuePoints)\n\n `\n ` \n List of content time offsets at which ad breaks are scheduled.\n Array of NSNumber double values in seconds.\n Empty NSArray for single ads or if no ad breaks are scheduled. \n\n #### Declaration\n\n Swift \n\n var adCuePoints: [Any] { get }\n\n Objective-C \n\n @property (nonatomic, copy, readonly) NSArray *_Nonnull adCuePoints;\n\n- `\n ``\n ``\n `\n\n ### [adPlaybackInfo](#/c:objc(cs)IMAAdsManager(py)adPlaybackInfo)\n\n `\n ` \n Groups various properties about the linear ad playback. \n\n #### Declaration\n\n Swift \n\n var adPlaybackInfo: any ../Protocols/IMAAdPlaybackInfo.html { get }\n\n Objective-C \n\n @property (nonatomic, readonly) id\u003c../Protocols/IMAAdPlaybackInfo.html\u003e _Nonnull adPlaybackInfo;\n\n- `\n ``\n ``\n `\n\n ### [volume](#/c:objc(cs)IMAAdsManager(py)volume)\n\n `\n ` \n Set and get the volume for the current ad. From 0 (muted) to 1 (loudest). This volume is\n relative to device volume, not absolute. Default value is 1. \n\n #### Declaration\n\n Swift \n\n var volume: Float { get set }\n\n Objective-C \n\n @property (nonatomic) float volume;\n\n- `\n ``\n ``\n `\n\n ### [-initializeWithAdsRenderingSettings:](#/c:objc(cs)IMAAdsManager(im)initializeWithAdsRenderingSettings:)\n\n `\n ` \n Initializes and loads the ad. \n\n #### Declaration\n\n Swift \n\n func initialize(with adsRenderingSettings: ../Classes/IMAAdsRenderingSettings.html?)\n\n Objective-C \n\n - (void)initializeWithAdsRenderingSettings:\n (nullable ../Classes/IMAAdsRenderingSettings.html *)adsRenderingSettings;\n\n #### Parameters\n\n |------------------------------|-----------------------------------------------------------------------------------------------------------|\n | ` `*adsRenderingSettings*` ` | the IMAAdsRenderingSettings. Pass in to influence ad rendering. Use nil to default to standard rendering. |\n\n- `\n ``\n ``\n `\n\n ### [-start](#/c:objc(cs)IMAAdsManager(im)start)\n\n `\n ` \n Starts advertisement playback. \n\n #### Declaration\n\n Swift \n\n func start()\n\n Objective-C \n\n - (void)start;\n\n- `\n ``\n ``\n `\n\n ### [-pause](#/c:objc(cs)IMAAdsManager(im)pause)\n\n `\n ` \n Pauses advertisement. \n\n #### Declaration\n\n Swift \n\n func pause()\n\n Objective-C \n\n - (void)pause;\n\n- `\n ``\n ``\n `\n\n ### [-resume](#/c:objc(cs)IMAAdsManager(im)resume)\n\n `\n ` \n Resumes the advertisement. \n\n #### Declaration\n\n Swift \n\n func resume()\n\n Objective-C \n\n - (void)resume;\n\n- `\n ``\n ``\n `\n\n ### [-skip](#/c:objc(cs)IMAAdsManager(im)skip)\n\n `\n ` \n Skips the advertisement if the ad is skippable and the skip offset has been reached.\n `IMAAdsManager.skip()` only skips ads if IMA does not render the 'Skip ad' button. \n\n #### Declaration\n\n Swift \n\n func skip()\n\n Objective-C \n\n - (void)skip;\n\n- `\n ``\n ``\n `\n\n ### [-destroy](#/c:objc(cs)IMAAdsManager(im)destroy)\n\n `\n ` \n Causes the ads manager to stop the ad and clean its internal state. \n\n #### Declaration\n\n Swift \n\n func destroy()\n\n Objective-C \n\n - (void)destroy;\n\n- `\n ``\n ``\n `\n\n ### [-discardAdBreak](#/c:objc(cs)IMAAdsManager(im)discardAdBreak)\n\n `\n ` \n If an ad break is currently playing, discard it and resume content.\n Otherwise, ignore the next scheduled ad break. \n\n #### Declaration\n\n Swift \n\n func discardAdBreak()\n\n Objective-C \n\n - (void)discardAdBreak;"]]