# IMAAdsManager

    @interface IMAAdsManager : NSObject

The IMAAdsManager class is responsible for playing ads.
- `


  ### [delegate](https://developers.google.com/interactive-media-ads/docs/sdks/ios/client-side/reference/Classes/IMAAdsManager#/c:objc(cs)IMAAdsManager(py)delegate)


  ` The IMAAdsManagerDelegate to notify with events during ad playback.

  #### Declaration

  Swift

      weak var delegate: (any NSObjectProtocol & https://developers.google.com/interactive-media-ads/docs/sdks/ios/client-side/reference/Protocols/IMAAdsManagerDelegate.html)? { get set }

  Objective-C

      @property (nonatomic, weak, nullable) NSObject<https://developers.google.com/interactive-media-ads/docs/sdks/ios/client-side/reference/Protocols/IMAAdsManagerDelegate.html> *delegate;

- `


  ### [adCuePoints](https://developers.google.com/interactive-media-ads/docs/sdks/ios/client-side/reference/Classes/IMAAdsManager#/c:objc(cs)IMAAdsManager(py)adCuePoints)


  ` 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.

  #### Declaration

  Swift

      var adCuePoints: [Any] { get }

  Objective-C

      @property (nonatomic, copy, readonly) NSArray *_Nonnull adCuePoints;

- `


  ### [adPlaybackInfo](https://developers.google.com/interactive-media-ads/docs/sdks/ios/client-side/reference/Classes/IMAAdsManager#/c:objc(cs)IMAAdsManager(py)adPlaybackInfo)


  ` Groups various properties about the linear ad playback.

  #### Declaration

  Swift

      var adPlaybackInfo: any https://developers.google.com/interactive-media-ads/docs/sdks/ios/client-side/reference/Protocols/IMAAdPlaybackInfo.html { get }

  Objective-C

      @property (nonatomic, readonly) id<https://developers.google.com/interactive-media-ads/docs/sdks/ios/client-side/reference/Protocols/IMAAdPlaybackInfo.html> _Nonnull adPlaybackInfo;

- `


  ### [volume](https://developers.google.com/interactive-media-ads/docs/sdks/ios/client-side/reference/Classes/IMAAdsManager#/c:objc(cs)IMAAdsManager(py)volume)


  ` Set and get the volume for the current ad. From 0 (muted) to 1 (loudest). This volume is
  relative to device volume, not absolute. Default value is 1.

  #### Declaration

  Swift

      var volume: Float { get set }

  Objective-C

      @property (nonatomic) float volume;

- `


  ### [-initializeWithAdsRenderingSettings:](https://developers.google.com/interactive-media-ads/docs/sdks/ios/client-side/reference/Classes/IMAAdsManager#/c:objc(cs)IMAAdsManager(im)initializeWithAdsRenderingSettings:)


  ` Initializes and loads the ad.

  #### Declaration

  Swift

      func initialize(with adsRenderingSettings: https://developers.google.com/interactive-media-ads/docs/sdks/ios/client-side/reference/Classes/IMAAdsRenderingSettings.html?)

  Objective-C

      - (void)initializeWithAdsRenderingSettings:
          (nullable https://developers.google.com/interactive-media-ads/docs/sdks/ios/client-side/reference/Classes/IMAAdsRenderingSettings.html *)adsRenderingSettings;

  #### Parameters

  |---|---|
  | ` adsRenderingSettings ` | the IMAAdsRenderingSettings. Pass in to influence ad rendering. Use nil to default to standard rendering. |

- `


  ### [-start](https://developers.google.com/interactive-media-ads/docs/sdks/ios/client-side/reference/Classes/IMAAdsManager#/c:objc(cs)IMAAdsManager(im)start)


  ` Starts advertisement playback.

  #### Declaration

  Swift

      func start()

  Objective-C

      - (void)start;

- `


  ### [-pause](https://developers.google.com/interactive-media-ads/docs/sdks/ios/client-side/reference/Classes/IMAAdsManager#/c:objc(cs)IMAAdsManager(im)pause)


  ` Pauses advertisement.

  #### Declaration

  Swift

      func pause()

  Objective-C

      - (void)pause;

- `


  ### [-resume](https://developers.google.com/interactive-media-ads/docs/sdks/ios/client-side/reference/Classes/IMAAdsManager#/c:objc(cs)IMAAdsManager(im)resume)


  ` Resumes the advertisement.

  #### Declaration

  Swift

      func resume()

  Objective-C

      - (void)resume;

- `


  ### [-skip](https://developers.google.com/interactive-media-ads/docs/sdks/ios/client-side/reference/Classes/IMAAdsManager#/c:objc(cs)IMAAdsManager(im)skip)


  ` 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.

  #### Declaration

  Swift

      func skip()

  Objective-C

      - (void)skip;

- `


  ### [-destroy](https://developers.google.com/interactive-media-ads/docs/sdks/ios/client-side/reference/Classes/IMAAdsManager#/c:objc(cs)IMAAdsManager(im)destroy)


  ` Causes the ads manager to stop the ad and clean its internal state.

  #### Declaration

  Swift

      func destroy()

  Objective-C

      - (void)destroy;

- `


  ### [-discardAdBreak](https://developers.google.com/interactive-media-ads/docs/sdks/ios/client-side/reference/Classes/IMAAdsManager#/c:objc(cs)IMAAdsManager(im)discardAdBreak)


  ` If an ad break is currently playing, discard it and resume content.
  Otherwise, ignore the next scheduled ad break.

  #### Declaration

  Swift

      func discardAdBreak()

  Objective-C

      - (void)discardAdBreak;