Google IMA iOS SDK release history
Stay organized with collections
Save and categorize content based on your preferences.
Page Summary
The Interactive Media Ads (IMA) SDK for iOS has undergone numerous updates including significant changes to privacy and compliance features like privacy manifests and App Tracking Transparency support.
Recent versions introduce extensive support for Google Video Stitcher, Pod Serving, and various Digital Ad Insertion (DAI) functionalities.
Performance enhancements such as ad preloading and native rendering with AVPlayer have been implemented across different releases.
The SDK has seen continuous API evolution with new classes, properties, and methods added or deprecated, along with updates to platform support, increasing minimum iOS requirements and adding support for newer devices.
Multiple bug fixes addressing memory leaks, event handling, and playback issues have been included in various releases.
Version
Release Date
Notes
3.31.0
2026-04-15
Fixes an issue introduced in version 3.30.0 where IMA SDK stopped
supporting minimum iOS versions lower than 17. This release supports
minimum version 15.
Fixes an issue where viewability was incorrectly measured at 0% on
iOS version 26.
Fixes an issue introduced in v3.30.0 where the xcframework file has
the incorrect permissions, and leads to the following error for
Swift Package Manager users:
Error Domain=NSCocoaErrorDomain Code=513
"couldn't be removed because you don't have permission to access it."
3.30.0
2026-03-13
Adds an experimental feature for WKWebView settings. By default, this experimental feature is disabled. To enable, use the IMASettings.featureFlags setting. This can improve performance on devices running iOS 17 or later.
Fixes a runtime crash when the SDK was used in the same target as the Google Cast iOS SDK.
Fixes an issue in IMAAVPlayerVideoDisplay where resignFirstResponder could be called on a background thread, to prevent UIKit "Main Thread Checker" warnings.
On 2027-03-13, SDK version 3.28.10 deprecates. For more
details, see
Deprecation schedule.
3.28.10
2025-10-22
Enables interstitial support for Server-Directed Ad Insertion (SDAI) live and VOD streams by introducing a useHLSInterstitial field to the stream request.
Improves memory management for companion ads to prevent memory leaks when your application destroys the adsManager object.
Increased minimum iOS version to 15.
On 2026-10-22, SDK version 3.27.4 deprecates. For more
details, see
Deprecation schedule.
3.27.4
2025-08-28
Fixes IMARemoteControl class creation to only happen
when the player starts playback.
On 2026-08-28, SDK version 3.26.1 deprecates. For more
details, see
Deprecation Schedule.
3.26.1
2025-04-02
Adds the ad period info to the AD_PERIOD_STARTED event,
which you can access from
IMAAdEvent.adData
property.
Adds support for handling HLS interstitials metadata with the IMA SDK.
On 2026-04-02, SDK version 3.24.0 deprecates. For more
details, see
Deprecation Schedule.
3.24.0
2024-12-03
Adds network code
to the list of stream request parameters for all stream types.
Fires a LOG event when an invalid click-through URL is clicked, rather
than failing silently.
Fixes a memory leak when OMID sessions were improperly destroyed.
Adds support for skippable ads in VOD Pod Serving streams.
Fixes a bug with scrolling support when the video is embedded in a
scrollable container.
Adds support for minSuggestedDuration to non-linear ads
Fixes a bug that caused incorrect encoding for Campaign Manager tracking
URLs, in some cases.
On 2025-12-03, SDK version 3.23.0 deprecates. For more
details, see
Deprecation Schedule.
Changes
asset-level fallback
logic to iterate through all ads in the original VAST until the SDK
identifies a playable creative. If no playable creative is found, the
ad isn't played.
On 2025-06-12, SDK version 3.22.1 deprecates. For more
details, see
Deprecation Schedule.
3.22.1
2024-04-12
Fixes an issue with the most recent Cocoapods release which prevented
apps from building on iOS Simulators.
On 2025-04-12, SDK version 3.22.0 deprecates. For more
details, see
Deprecation Schedule.
3.22.0
2024-04-03
Adds a privacy manifest PrivacyInfo.xcprivacy file and a
signature for the SDK.
The IMA iOS SDK is now packaged as an xcframework.
Adds M1 simulator support.
Fixed an issue where it was possible to overwrite the IMA SDK version
information.
Fixed an issue where the iOS SDK created duplicate symbol warnings.
On 2023-04-19, SDK version 3.15.1 deprecates. For more
details, see
Deprecation Schedule.
3.15.1
2022-02-23
Increased minimum iOS version to 12
On 2023-02-23, SDK version 3.14.5 deprecates. For more
details, see
Deprecation Schedule.
3.14.5
2021-10-05
Added
IMASettings:sameAppKeyEnabled
API which helps you deliver more relevant and personalized ads by
using data collected from your apps. The API is currently enabled by
default with no changes needed from publishers.
Added nullability contracts to all APIs.
On 2022-10-05, SDK version 3.14.4 deprecates. For more
details, see
Deprecation Schedule.
3.14.4
2021-07-06
Fixed an issue that caused missing events when apps are
backgrounded.
Fixed an issue that allowed publishers to manually set
islat on iOS <14.
Increased minimum iOS version to iOS 11
On 2022-07-06, SDK version 3.14.3 deprecates. For more
details, see
Deprecation Schedule.
3.14.3
2021-05-03
Fixed an issue that caused warning messages on iOS < 12.
Reworks support for OMID 1.3 friendly obstructions to use
registerFriendlyObstruction methods in IMAAdDisplayContainer.
Deprecates the
registerVideoControlsOverlay
and unregisterAllVideoControlsOverlay methods in IMAAdDisplayContainer
in favor of FriendlyObstruction.
Fixes an issue where OMID autoPlay and skippability weren't reported
Removes all remaining references to UIWebView
On 2021-01-22, SDK version 3.11.1 deprecates. For more
details, see
Deprecation Schedule.
3.11.1
2019-12-04
Adds support for automatic inclusion of consent parameters from IAB
TCFv2 and CCPA.
Fixes an issue that caused crashing when using the Control Center.
Adds support for TrueView for Action ads.
Adds playerVideoDisplay:didLoadPlayerItem: for DAI.
Updates IMAAVPlayerVideoDisplayDelegate names for
consistency with Obj-C style conventions.
Fixes an issue that prevented LOG and
INTERACTION ad events from including the ad object in some
cases.
Adds automatic integration of Google Ad requests for implementations
of IAB TCFv2-compliant consent management providers, such as Google's
Funding Choices.
Fixes an issue with VMAP breakstart and
breakend tracking events.
Adds the replaceAdTagParameters method to the
IMAStreamManager, which provides the ability to replace all
ad tag parameters during a live stream.
Adds the AD_BREAK_FETCH_ERROR event to indicate that an
ad break will not play.
On 2020-12-04, SDK version 3.10.1 deprecates. For more
details, see
Deprecation Schedule.
3.10.1
2019-09-19
Adds support for iOS 13 and iPadOS.
On 2020-09-19, SDK version 3.9.2 deprecates. For more
details, see
Deprecation Schedule.
3.9.2
2019-08-16
This fixes an issue where a clear IMA ad UI view would remain
after ads had played, preventing the user from interacting with the player.
On 2020-08-16, SDK version 3.9.1 deprecates. For more
details, see
Deprecation Schedule.
3.9.1
2019-07-18
Fixed issues with accuracy of is_lat reporting.
IMAAdEventType.adData is now typed.
Added the authToken and streamFormat APIs to
IMAStreamRequest.
Removed mediaUrl support from LinearAd. Use
adMedia instead.
Fixed YouTube metadata bug for unlisted videos.
Fixed incorrect ad ID identification.
Replaced mediaWidth and mediaHeight with
adMedia.width and adMedia.height.
Fixed an issue where companion ads would only render once.
Now when a video ad type is not supported, the SDK will throw the error
kIMAError_VAST_TRAFFICKING_ERROR rather than
kIMAError_FAILED_TO_REQUEST_ADS.
videoDisplayDidPlay: is now deprecated, in favor of
videoDisplayDidResume:.
On 2020-07-18, SDK version 3.9.0 deprecates. For more
details, see
Deprecation Schedule.
On 2019-04-30, SDK version 3.7.0 deprecates. For more
details, see
Deprecation Schedule.
3.7.0.1
2018-02-12
Cocoapods-only release to fix a podspec error. Pulls down the library files for 3.7.0.
3.7.0
2018-01-30
Drops support for iOS 8 and below.
Service release, no new features.
On 2019-01-30, SDK version 3.6.1 deprecates. For more
details, see
Deprecation Schedule.
3.6.1
2017-10-09
Adds IMAAdsRequest.liveStreamPrefetchSeconds.
On 2018-10-09, SDK version 3.6.0 deprecates. For more
details, see
Deprecation Schedule.
3.6.0
2017-07-24
Adds IMAAdsRequest.vastLoadTimeout.
Adds IMAAd.wrapperAdIDs.
Adds IMAAd.skipTimeOffset.
Fixes an error where the SDK could not detect the video view used for ad playback if it was removed from and re-added to the view hierarchy.
On 2018-07-24, SDK version 3.5.2 deprecates. For more
details, see
Deprecation Schedule.
3.5.2
2017-05-02
Removes auto-resuming when coming back into app from backgrounding.
Call [IMAAdsManager resume] to resume.
Adds [IMAAdsRenderingSettings playAdsAfterTime].
On 2018-05-02, SDK version 3.5.1 deprecates. For more
details, see
Deprecation Schedule.
3.5.1
2017-04-03
The SDK will now throw kIMAError_FAILED_TO_REQUEST_ADS if
the IMAAdDisplayContainer is not in the view hierarchy when
an ad or stream request is made. Previously, these requests failed
silently.
On 2018-04-03, SDK version 3.5.0 deprecates. For more
details, see
Deprecation Schedule.
3.5.0
2017-03-24
Fixes an issue with bitcode support.
Adds adsResponse to the IMAAdsRequest object.
Fixes an issue with Swift builds.
On 2018-03-24, SDK version 3.4.2 deprecates. For more
details, see
Deprecation Schedule.
3.4.2
2017-03-09
Service release, no new features.
On 2018-03-09, SDK version 3.4.1 deprecates. For more
details, see
Deprecation Schedule.
3.4.1
2017-02-03
The SDK is now distributed as a dynamic framework. As a result we no longer publish a separate AdMob version of the Framework - you can use the same version whether or not your implementation also uses AdMob.
Adds support for video icons.
Adds the following new properties to IMAAd:
adSystem
creativeID
creativeAdID
universalAdIdValue
universalAdIdRegistry
advertiserName
surveyURL
dealID
wrapperCreativeIDs
wrapperSystems
Adds the following new properties to IMAAdsRequest:
On 2018-02-03, SDK version 3.3.1 deprecates. For more
details, see
Deprecation Schedule.
Rollback to 3.3.1
2016-01-31
Due to issue with building for specific devices, rolled back to 3.3.1.
3.4.0
2017-01-26
The SDK is now distributed as a dynamic framework. As a result we no longer publish a separate AdMob version of the Framework - you can use the same version whether or not your implementation also uses AdMob.
Adds support for video icons.
Adds the following new properties to IMAAd:
adSystem
creativeID
creativeAdID
universalAdIdValue
universalAdIdRegistry
advertiserName
surveyURL
dealID
wrapperCreativeIDs
wrapperSystems
Adds the following new properties to IMAAdsRequest:
Introduces ad buffer events via IMAAdsManager delegates. This facilitates adding elements such as activity indicators and buffering bars to the player.
Exposes debugging mode. Publishers can now set the IMASettings enableDebugMode setting to YES to get more verbose logging in the console. This should not be used in production, as it will watermark the ad player.
IMAAdsManager destroy now correctly terminates ads in all cases.
Allows the reuse of display containers.
Allows publishers to destroy IMA objects from within delegate methods.
IMAAdsManager now only has a weak reference to contentPlayhead (fixing potential memory leaks). You will now need to retain any IMAAVPlayerContentPlayhead instance or object that implements IMAContentPlayhead as a property, otherwise the object will be immediately released.
Removes video resizing animation.
Removes unnecessary initial resume ad event.
Beta v14
2015-05-27
Fixed an issue where the ad player would occasionally stop to buffer and never resume playback.
Fixes a memory leak introduced in Beta v10 with the addition of WKWebView.
Beta v10
2014-11-20
The SDK now uses WKWebView on iOS 8 to render ads instead of UIWebView. This fixes multiple issues related to communication between the SDK native and JS layers. As a side effect of this change, the IMA SDK will now require that your app be built with support for arm64.
Added a TAPPED event which is fired whenever the user taps on a non-clickable part of an ad. This can be used to detect taps on an ad to show player controls.
To conform to iOS convention, the following methods have been deprecated and replaced with methods that take a reference to the calling object:
[[["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 2026-04-17 UTC."],[],[]]