The IMA SDK for iOS allows for setting the continuous play context for an
ads request. ThecontinuousPlaybackproperty notifies the SDK whether the player intends to continuously play the content videos
one after another, similar to a TV broadcast. When set totrue, the ads returned from
the request are those designated by the ads server as suitable for continuous play. Not
specifying a value for
this property
leaves the setting as unknown.The following sample demonstrates how to set continuous play in an ads request.
The IMA SDK for iOS also allows for setting whether the player will start playing
automatically or wait for user action to begin playing. This is done using theadWillAutoPlayproperty. When set totrue, the ads returned are those designated by the ads
server as suitable for an auto-play environment.
This table details when to request ads for continuous play and auto-play, based on the video content
the ads are paired with.
Video Content
Value for continuousPlayback
Value for adWillAutoPlay
A single content video that plays upon user interaction
false
false
A single content video that autoplays
false
true
A video playlist that plays the first video upon user interaction but autoplays the
following videos
true
false
A video playlist that autoplays the first video and autoplays the following videos
[[["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-09-05 UTC."],[[["\u003cp\u003eThe IMA SDK for iOS allows you to specify whether your content videos will play continuously, influencing the types of ads returned by the ad server.\u003c/p\u003e\n"],["\u003cp\u003eSetting \u003ccode\u003econtinuousPlayback\u003c/code\u003e to \u003ccode\u003etrue\u003c/code\u003e signals that videos will play one after another, like a TV broadcast, and is suitable for video playlists with autoplay.\u003c/p\u003e\n"],["\u003cp\u003eWhile \u003ccode\u003econtinuousPlayback\u003c/code\u003e impacts ad selection, it does not affect ad playback; \u003ccode\u003eadWillAutoPlay\u003c/code\u003e controls whether ads start playing automatically.\u003c/p\u003e\n"],["\u003cp\u003eUse \u003ccode\u003eadWillAutoPlay\u003c/code\u003e set to \u003ccode\u003etrue\u003c/code\u003e when your single content video or video playlist starts playing automatically without user interaction.\u003c/p\u003e\n"],["\u003cp\u003eConsult the provided table to determine the appropriate settings for \u003ccode\u003econtinuousPlayback\u003c/code\u003e and \u003ccode\u003eadWillAutoPlay\u003c/code\u003e based on your specific video content behavior.\u003c/p\u003e\n"]]],[],null,["Select platform: [HTML5](/interactive-media-ads/docs/sdks/html5/client-side/continuous-playback \"View this page for the HTML5 platform docs.\") [Android](/interactive-media-ads/docs/sdks/android/client-side/continuous-playback \"View this page for the Android platform docs.\") [iOS](/interactive-media-ads/docs/sdks/ios/client-side/continuous-playback \"View this page for the iOS platform docs.\") [tvOS](/interactive-media-ads/docs/sdks/tvos/client-side/continuous-playback \"View this page for the tvOS platform docs.\")\nThe IMA SDK for iOS allows for setting the continuous play context for an ads request. The `\n`[continuousPlayback](/interactive-media-ads/docs/sdks/ios/client-side/reference/Classes/IMAAdsRequest#continuousplayback) property notifies the SDK whether the player intends to continuously play the content videos one after another, similar to a TV broadcast. When set to `true`, the ads returned from the request are those designated by the ads server as suitable for continuous play. Not specifying a value for this property leaves the setting as unknown. **Note:** Changing this setting has no impact on ad playback.\nThe following sample demonstrates how to set continuous play in an ads request. \n\nObjective-C \n\n```objective-c\nIMAAdsRequest *request = [[IMAAdsRequest alloc]\n initWithAdTagUrl:adTagUrl\n adDisplayContainer:[self createAdDisplayContainer]\n avPlayerVideoDisplay:[[IMAAVPlayerVideoDisplay alloc] initWithAVPlayer:self.contentPlayer]\n pictureInPictureProxy:self.pictureInPictureProxy\n userContext:nil];\n request.continuousPlayback = true;\n [self.adsLoader requestAdsWithRequest:request];\n```\n\nSwift \n\n```swift\nlet request = IMAAdsRequest(\n adTagUrl: adTagUrl,\n adDisplayContainer: createAdDisplayContainer(),\n avPlayerVideoDisplay: IMAAVPlayerVideoDisplay(avPlayer: contentPlayer),\n pictureInPictureProxy: pictureInPictureProxy,\n userContext: nil)\nrequest.continuousPlayback = true;\nadsLoader!.requestAds(with: request)\n```\n\nHow continuous play differs from ad auto-play The IMA SDK for iOS also allows for setting whether the player will start playing automatically or wait for user action to begin playing. This is done using the `\n`[adWillAutoPlay](/interactive-media-ads/docs/sdks/ios/client-side/reference/Classes/IMAAdsRequest#adwillautoplay) property. When set to `true`, the ads returned are those designated by the ads server as suitable for an auto-play environment.\n\n\nThis table details when to request ads for continuous play and auto-play, based on the video content\nthe ads are paired with.\n\n| Video Content | Value for continuousPlayback | Value for adWillAutoPlay |\n|------------------------------------------------------------------------------------------------------|------------------------------|--------------------------|\n| A single content video that plays upon user interaction | `false` | `false` |\n| A single content video that autoplays | `false` | `true` |\n| A video playlist that plays the first video upon user interaction but autoplays the following videos | `true` | `false` |\n| A video playlist that autoplays the first video and autoplays the following videos | `true` | `true` |"]]