Version
Release Date
Notes
3.37.0
2025-07-15
- Adds app desugaring as a requirement for apps integrating the IMA SDK. Apps without desugaring enabled won't build with the current or future IMA versions. To enable app desugaring, see Add the IMA SDK to your project .
- Updates the minimum version requirements for Android
compileSdk
value to 35 and Android Gradle plugin value to 8.6.0. - Adds the
AdPeriodInfo
interface, accessible using theAdEvent#getAdPeriodInfo()
method on theAD_PERIOD_STARTED
event. - Adds the
PlaybackMeasurementCollector
interface to evaluate SDK performance and scheduling ads in ExoPlayer apps. - Updates IMA to throw an exception if you make an ad or stream request with invalid parameters.
- Adds the
AdError.WEB_VIEW_ERROR
error type which occurs if the WebView renderer crashes. This new error type fixes an issue whereWebView
renderer crashes cause the app to crash. - Optimizes the
ImaSdkFactory.initialize()
function by moving parts of the WebView initialization to a background thread. This change reduces the likelihood of ANR errors duringImaSdkFactory.initialize()
call. - Fixes a
NullPointerException
error caused by initiating a new ads request while also callingAdsLoader.release()
. - Fixes a
WebViewCompat.addWebMessageListener
crash that occurs on legacy CTV devices. - Fixes an issue where the IMA SDK did not mark
getPreviousCuePointForStreamTimeMs()
asnullable
. - Fixes an issue that caused the SDK to crash when no WebView is installed. Note: WebView is a crucial component of the SDK. If no WebView is installed, the SDK can't function properly.
- Updates the webkit dependencies to the latest stable versions.
- The IMA Android SDK plans to update its minimum required API level
(
minSdkVersion
) to version 23, to match the Android Jetpack (AndroidX) libraries. For more info, see the Jetpack version requirements . - Removes the following deprecated methods:
-
Ad.getUniversalAdIdValue()
-
Ad.getUniversalAdIdRegistry()
-
AdsManager.requestNextAdBreak()
-
BaseManager.isCustomPlaybackUsed()
-
ImaSdkFactory.createAdDisplayContainer()
-
ImaSdkFactory.createAudioAdDisplayContainer(Context)
-
ImaSdkFactory.createStreamDisplayContainer()
-
StreamManager.getStreamTimeForContentTime(double contentTime)
-
StreamManager.getContentTimeForStreamTime(double streamTime)
-
StreamManager.getPreviousCuePointForStreamTime(double streamTime)
-
VideoProgressUpdate.getCurrentTime()
-
VideoProgressUpdate.getDuration()
-
3.36.0
2024-11-07
- A known issue is introduced in this version for instant apps . If you integrate IMA into instant apps, we recommend not updating your app to IMA version 3.36.0. The next SDK release will include a fix for this issue.
- Adds new stream request methods that include the
NetworkCode
parameter. The new methods areImaSdkFactory.createLiveStreamRequest()
andImaSdkFactory.createVodStreamRequest()
. Deprecates the similar APIs that don't include thenetworkCode
parameter. - Wraps companion creatives in a frame layout matching the slot size
declared with
CompanionAdSlot.setSize()
. - The IMA SDK version 3.36.0 deprecates on 2026-07-15. For more details, see the Deprecation Schedule .
3.35.1
2024-09-24
- Fixes an issue where Open Measurement
fails when using the
ImaSdkFactory.initialize()
API. - Increases the
minSdkVersion
that IMA supports to 21. - Adds
ImaSdkFactory.initialize()
to fetch and initialize IMA assets prior to the first ad request. Callinginitialize()
allocates memory required for future ad playback and reduces latency playing the first ad. For more information, see Improve IMA load time . - Fixes an invalid ad click-through URL issue.
- Fixes a crash introduced in IMA v3.34.0 affecting apps that are not using java8 desugaring on Android API versions 25 and lower.
- Adds optimizations to IMA start-up time on legacy CTV devices.
- Improves stability for opening links on devices without a browser installed.
- The IMA SDK version 3.35.1 deprecates on 2025-11-07. For more details, see the Deprecation Schedule .
3.35.0 Deprecated
2024-08-28
- A known issue exists with this version where OMID measurement
fails when using the
ImaSdkFactory.initialize()
API. Use IMA SDK Android v3.35.1 instead. - Because version 3.35.0 is deprecated, its release notes have been moved to the version 3.35.1 section.
3.34.0
2024-06-13
- A known issue exists with this version that affects apps which do not enable Java 8+ API desugaring . This issue is limited to devices on Android API version 25 or lower, and may cause app crashes.
- Adds
getVideoStitcherSessionOptions()
andsetVideoStitcherSessionOptions()
toStreamRequest
to manage video stitching sessions in theImaSdkFactory.createVideoStitcherLiveStreamRequest()
orImaSdkFactory.createVideoStitcherVodStreamRequest()
workflow. - Fixes a rare crash caused by invalid audio volume values.
- Removes setting
taskAffinity
to null in the android manifest. This change fixes issues where the app's behavior would change unexpectedly. - The IMA SDK version 3.34.0 deprecates on 2025-09-24. For more details, see the Deprecation Schedule .
3.33.0
2024-03-28
- Adds
ImaSdkFactory.createVideoStitcherVodStreamRequest(String networkCode, String region, String projectNumber, String oAuthToken, String vodConfigId)
. This new API includes thevodConfigId
parameter which replaces the use ofcontentSourceUrl
andadTagUrl
in the previous API. - Adds
StreamRequest.getVodConfigId()
. - Fixes the unexpected crash on Android API levels 25 and lower, introduced in v3.32.0.
- The IMA SDK version 3.33.0 deprecates on 2025-06-13. For more details, see the Deprecation Schedule .
3.32.0 Deprecated
2024-01-30
- This version has an issue with device running Android API levels 25 and lower. Use IMA SDK Android v3.33.0 instead.
- Adds third-party stitcher VOD stream support for pod serving. See the Android pod serving guide for more info. This change includes adding the following APIs:
- Increases the
minSdkVersion
that IMA supports to 19. - Fixes the issue where ad clickthroughs using the Learn more button wouldn't open a new page in Android API version 30 and higher. The issue still exists on IMA SDK versions 3.31.0 through 3.29.0 where a workaround is needed for ad clickthroughs to work.
- Fixes a bug where using
AdsLoader.addAdsLoadedListener()
could cause anArrayIndexOutOfBoundsException
exception. - Adds the ad error
VAST_NO_ADS_AFTER_WRAPPER
.
3.31.0
2023-08-31
- There is an issue with IMA SDK versions 3.31.0 through 3.29.0 with
Android API version 30 and higher where ad clickthroughs using the Learn more
button don't open a new page. As a workaround for
the affected versions, you should add intent declarations to open web
links in your app manifest as follows:
< ? xml version = "1.0" encoding = "utf-8" ? > < manifest xmlns : android = "http://schemas.android.com/apk/res/android" package = "com.example.project_name" > ... < / application > < queries > < intent > < action android : name = "android.intent.action.VIEW" / > < data android : scheme = "https" / > < / intent > < intent > < action android : name = "android.intent.action.VIEW" / > < data android : scheme = "http" / > < / intent > < / queries > < / manifest >
- Updates IMA's dependency of OM SDK to version 1.4.8, which includes new connected TV signals.
- Deprecates the following
AdsRequest
APIs:-
getExtraParameter()
-
getExtraParameters()
-
setExtraParameter()
-
- The IMA SDK version 3.31.0 deprecates on 2025-03-28. For more details, see the Deprecation Schedule .
3.30.3
2023-08-03
- Updates internal library dependencies to improve startup latency.
- The IMA SDK version 3.30.3 deprecates on 2024-08-31. For more details, see the Deprecation Schedule .
3.30.2
2023-07-28
- Fixes the unexpected
NullPointerException
errors introduced in v3.30.1. - Fixes an issue with proguarding which caused some events to not be emitted from the SDK. This bugfix affects the ExoPlayer extension for the IMA DAI SDK.
- Adds support for Gradle v8+. Past versions of the Android IMA SDK need
to set
android.enableR8.fullMode=false
in the gradle.properties file. See the R8 full mode article for more info. - The IMA SDK version 3.30.2 deprecates on 2024-08-03. For more details, see the Deprecation Schedule .
3.30.1 Deprecated
2023-04-18
- This version has an issue with unexpected
NullPointerException
errors. Use the older IMA SDK Android v3.29.0 until a newer working version is released. - Fixes an issue where apps using v3.30.0 crash on non-Android TV devices.
3.30.0 Deprecated
2023-03-29
- This version has an issue causing crashes for apps that are not running on the Android TV platform. Use IMA SDK Android v3.29.0 instead.
- Adds the
ImaSdkFactory.createVideoStitcherVodStreamRequest()
API. - Adds compatibility for Google TVs Hybrid inventory.
- Removes support for the deprecated
ImaSdkFactory.createSdkOwnedPlayer()
API. - Adds the ADS_PLAYER_NOT_PROVIDED error code.
- Creates the
BaseRequest
class that bothAdsRequest
andStreamRequest
now implement. - Adds the
SecureSignals
class. - Adds the
BaseRequest.setSecureSignals()
method. - The IMA SDK version 3.30.0 deprecates on 2024-04-18. For more details, see the Deprecation Schedule .
3.29.0
2022-10-14
- Renames the
EspVersion
class to theVersionInfo
class. - Renames the Encrypted Signals for Publishers (ESP) APIs to the Secure Signals APIs.
- Adds the feature flags APIs. You can use the feature flag APIs to enable or disable
specific features in IMA. Use
ImaSdkSettings.getFeatureFlags()
andImaSdkSettings.setFeatureFlags()
to get and set feature flags. - Fixes an issue where some IMA events weren't sent.
- Adds androidx.webkit:webkit as an IMA SDK dependency
- The IMA SDK version 3.29.0 deprecates on 2024-03-29. For more details, see the Deprecation Schedule .
3.28.2
2022-09-14
- Updates SDK dependencies to use AndroidX.
- The IMA SDK version 3.28.2 deprecates on 2023-10-14. For more details, see the Deprecation Schedule .
3.28.1 Deprecated
2022-08-03
- This version has an issues with crashes on Android v27 and lower. Use IMA SDK Android v3.28.2 instead.
- Adds the
ImaSdkFactory.createVideoStitcherLiveStreamRequest()
API. - The IMA SDK version 3.28.1 deprecates on 2023-09-14. For more details, see the Deprecation Schedule .
3.27.1
2022-05-27
- Service release, no new features.
- The IMA SDK version 3.27.1 deprecates on 2023-08-03. For more details, see the Deprecation Schedule .
3.27.0
2022-03-01
- Adds support for fluid sized companion slots by setting companion
width and height to the IMA constant
FLUID_SIZE
. - The IMA SDK version 3.27.0 deprecates on 2023-05-27. For more details, see the Deprecation Schedule .
3.26.0
2022-01-12
- Adds Encrypted Signals for Publishers (ESP) APIs (renamed to Secure Signals in IMA SDK v3.29.0). This lets publishers enable Network Bidders and IDPs.
- The IMA SDK version 3.26.0 deprecates on 2023-03-01. For more details, see the Deprecation Schedule .
3.25.1
2021-11-08
- Adds
AdsRenderingSettings.setEnableCustomTabs()
andAdsRenderingSettings.getEnableCustomTabs()
for in-app click-through of ads using custom tabs . - Starting from version 3.25.1, IMA SDK includes the
com.google.android.gms.permission.AD_ID
permission in the SDK's manifest that is automatically merged into the app manifest by Android build tools. To learn more about theAD_ID
permission declaration, including how to disable it, refer to this Play Console Help article . - Adds support for the app set ID for use cases such as reporting and fraud prevention.
- Adds performance improvements when using multiple
AdsLoader
instances by supporting thread caching and reuse. - The IMA SDK version 3.25.1 deprecates on 2023-01-12. For more details, see the Deprecation Schedule .
3.24.0
2021-06-03
- Adds fixed-point precision APIs for the
CuePoint
andStreamManager
classes used in DAI. This adds the following APIs:-
CuePoint.getEndTimeMs()
-
CuePoint.getStartTimeMs()
-
StreamManager.getContentTimeMsForStreamTimeMs()
-
StreamManager.getPreviousCuePointForStreamTimeMs()
-
StreamManager.getStreamTimeMsForContentTimeMs()
-
CuePoint.getEndTime()
-
CuePoint.getStartTime()
-
StreamManager.getContentTimeForStreamTime()
-
StreamManager.getPreviousCuePointForStreamTime()
-
StreamManager.getStreamTimeForContentTime()
-
- Prevents a
NullPointerException
error related to internal calls toStreamRequest.getContentUrl()
. - The IMA SDK version 3.24.0 deprecates on 2022-11-08. For more details, see the Deprecation Schedule .
3.23.0
2021-04-07
- Adds the
ImaSdkSettings.setSessionId()
and theImaSdkSettings.getSessionId()
methods to get and set the Session ID . This is a temporary random ID used exclusively for frequency capping. - Fixes a
NullPointerException
error related to companion ads. - Disables javascript within companion ads lower then API level 21 to fix an issue with security vulnerabilities.
- The IMA SDK version 3.23.0 deprecates on 2022-06-03. For more details, see the Deprecation Schedule .
3.22.3
2021-03-16
- Fixes a
NullPointerException
error related to releasing theAdsLoader
while an ad is being loaded. - Adds the
1206
error for anUNEXPECTED_ADS_LOADED_EVENT
in cases when an ads loaded event is sent unexpected. - The IMA SDK version 3.22.3 deprecates on 2022-04-07. For more details, see the Deprecation Schedule .
3.22.2
2021-02-26
- The IMA SDK now depends on the following libraries:
- com.google.android.gms:play-services-base
- com.google.android.gms:play-services-basement
- androidx.preference:preference
- Fixes the error message when
AdsLoader
would receive an error without a valid session ID. - The IMA SDK version 3.22.2 deprecates on 2022-03-16. For more details, see the Deprecation Schedule .
3.22.0
2021-01-11
- Adds pod serving for DAI streams. In the pod serving workflow, Ads Manager
is only responsible for serving ads. Publishers are responsible for
content and creating the manifest that will then point to Ads Manager.
Use
ImaSdkFactory.createPodStreamRequest()
to create a stream request for pod serving. If using this, you will be responsible for loading the stream onstreamInit()
. - Fixes a memory leak caused by the app lifecycle monitor not being properly cleaned up.
- The IMA SDK version 3.22.0 deprecates on 2022-02-26. For more details, see the Deprecation Schedule .
3.21.4
2020-12-09
- Removes a harmless warning message related to calling
adsLoader.release()
after the webview has been destroyed. - The IMA SDK version 3.21.4 deprecates on 2022-01-08. For more details, see the Deprecation Schedule .
3.21.2
2020-11-20
- Fixes unexpected thread-safe issues caused by sending message updates from an empty queue.
- Updates the documentation for
AdsLoader.release()
. - The IMA SDK version 3.21.2 deprecates on 2021-12-09. For more details, see the Deprecation Schedule .
3.21.1
2020-11-17
- Fixes an issue that occasionally led to app crashes when events were fired.
- The IMA SDK version 3.21.1 deprecates on 2021-11-20. For more details, see the Deprecation Schedule .
3.21.0
2020-10-23
- Adds support for SIMID ads in the DAI Android SDK.
- Adds the
AdsLoader.release()
method and deprecatesBaseDisplayContainer.destroy()
. This change resolves a memory leak which occurred when disposing of aBaseDisplayContainer
in the middle of a VMAP ad schedule.AdsLoader.release()
is the new recommended method to dispose of IMA SDK objects, instead of usingBaseDisplayContainer.destroy()
. - The IMA SDK version 3.21.0 deprecates on 2021-11-17. For more details, see the Deprecation Schedule .
3.20.1
2020-10-12
- Fixes an issue with HTMLResource companions on API Level 29+ of Android. For more details, see the documented change in Android API behavior .
- The IMA SDK version 3.20.1 deprecates on 2021-10-23. For more details, see the Deprecation Schedule .
3.20.0
2020-08-18
- Version 3.20.0 is the first version that will be affected by the changes to IMA pause behavior . If you use this or any future version of the SDK we recommend reading the blog post and making the changes to pause behavior in your application. Publishers can test their implementation of these changes using the test ad tag .
- Adds the
onPause()
andonResume()
callbacks for the DAIVideoStreamPlayer
class. - Adds the
adPeriodDuration()
method to theAdProgressInfo
class. - Adds support for icon click fallback images on Android TV devices.
- Adds the
ICON_FALLBACK_IMAGE_CLOSED
event to handle when the icon fallback image is closed on Android TV devices. - Removes the deprecated
focusSkipButton()
method fromAdsManager
in favor of thefocus()
method. - For CTV devices, ads are now auto focused when the
AdEvent.AdEventType STARTED
event is fired. To disable auto focus for ads, use theadsRenderingSettings.setFocusSkipButtonWhenAvailable(false)
method and then use thefocus()
method based on the custom requirements. - Adds the
getCurrentTimeMs()
andgetDurationMs
methods to theVideoProgressUpdate()
class. - Deprecates the
getCurrentTime
andgetDuration
methods in favor of the newgetCurrentTimeMs
andgetDurationMs
methods. - Fixes an issue for DASH live streams where ad events were not being reported correctly.
- The IMA SDK version 3.20.0 deprecates on 2021-10-12. For more details, see the Deprecation Schedule .
3.19.4
2020-07-08
- Fixes an issue that was preventing
setLoadVideoTimeout
from correctly updating the timeout. - The IMA SDK version 3.19.4 deprecates on 2021-08-18. For more details, see the Deprecation Schedule .
3.19.3
2020-06-29
- Fixes an issue with the IAB TCF integration for GDPR that caused crashes for players integrated with Consent Management Platform SDKs.
- The IMA SDK version 3.19.3 deprecates on 2021-07-08. For more details, see the Deprecation Schedule .
3.19.2
2020-06-22
- Fixes an issue that caused the SDK to ignore
VideoAdPlayerCallback.onContentComplete()
events outside of ad playback. - Adds the ability to specify different DAI subtitle sets for the same
language by using the
subtitle_name
parameter forVideoStreamPlayer.loadUrl()
. - The IMA SDK version 3.19.2 deprecates on 2021-06-29. For more details, see the Deprecation Schedule .
3.19.0
2020-05-12
- Adds the
VideoAdPlayerCallback.onLoaded()
callback toVideoAdPlayer
. - Deprecates
AdsLoader.contentComplete()
in favor ofVideoAdPlayerCallback.onContentComplete()
andVideoStreamPlayerCallback.onContentComplete()
. - The IMA SDK version 3.19.0 deprecates on 2021-06-22. For more details, see the Deprecation Schedule .
3.18.1
2020-03-25
- Adds scaling for Companion Ads on high-pixel-density devices.
- Adds support for client-side SIMID ads.
- The IMA SDK version 3.18.1 deprecates on 2021-05-12. For more details, see the Deprecation Schedule .
3.18.0
2020-03-04
- Adds pause() and resume() to the
VideoStreamPlayer
interface. These must be implemented for v3.18.0 and later. - The IMA SDK version 3.18.0 deprecates on 2021-03-25. For more details, see the Deprecation Schedule .
3.17.0
2020-02-07
- Adds the following APIs to move the validation of display containers to the time of their creation:
- Adds the
ImaSdkFactory.createSdkOwnedPlayer
which should be used by those using IMAs built-in player (SdkOwnedPlayer). It should be manually constructed and passed into the constructor for AdDisplayContainer. - Adds not null checks to
setAdContainer
andsetPlayer
. - Updates cuepoint data to now use floating point precision.
- Deprecates the following methods:
-
AdDisplayContainer.setPlayer(VideoAdPlayer player)
-
BaseDisplayContainer.setAdContainer(ViewGroup container)
-
BaseManager.isCustomPlaybackUsed()
-
ImaSdkFactory.createAdDisplayContainer()
-
ImaSdkFactory.createAudioAdDisplayContainer(Context context)
-
ImaSdkFactory.createStreamDisplayContainer()
-
StreamDisplayContainer.setVideoStreamPlayer(VideoStreamPlayer player)
-
- The IMA SDK version 3.17.0 deprecates on 2021-03-04. For more details, see the Deprecation Schedule .
3.16.5
2020-01-22
- Reworks support for OMID 1.3 contentUrl with
AdsRequest.setContentUrl
andStreamRequest.setContentUrl
. - Reworks support for OMID 1.3 friendly obstructions with
FriendlyObstruction
. - Deprecates the methods
BaseDisplayContainer.registerVideoControlsOverlay
andBaseDisplayContainer.unregisterAllVideoControlsOverlay
in favor ofFriendlyObstruction
. - Fixes an issue with a
NullPointerException
occurring after callingclear()
onCompanionAdSlots
. - Fixes an issue that was potentially causing memory leaks when calling
destroy()
during ad playback. - The IMA SDK version 3.16.5 deprecates on 2021-02-07. For more details, see the Deprecation Schedule .
3.16.2
2019-12-05
- Adds support for automatic inclusion of consent parameters from IAB TCFv2 and CCPA.
- Using Android preferences now requires the
androidx
package. - The IMA SDK version 3.16.2 deprecates on 2021-01-22. For more details, see the Deprecation Schedule .
3.16.1
2019-11-08
- Adds a new method to the ImaSdkFactory for
createAudioAdDisplayContainer
- The IMA SDK version 3.16.1 deprecates on 2020-12-05. For more details, see the Deprecation Schedule .
3.16.0
2019-10-23
- Adds the replaceAdTagParameters method to the StreamManager , which provides the ability to replace all ad tag parameters during a livestream.
- Removes support of the following deprecated methods:
-
AdsRequest.getAdDisplayContainer()
-
AdsRequest.setAdDisplayContainer(AdDisplayContainer adDisplayContainer)
-
ImaSdkFactory.createAdsLoader(Context context)
-
ImaSdkFactory.createAdsLoader(Context context, ImaSdkSettings settings)
-
ImaSdkFactory.createLiveStreamRequest(String assetKey, String apiKey, StreamDisplayContainer streamDisplayContainer)
-
ImaSdkFactory.createVodStreamRequest(String contentSourceId, String videoId, String apiKey, StreamDisplayContainer streamDisplayContainer)
-
StreamRequest.getStreamDisplayContainer()
-
- The IMA SDK version 3.16.0 deprecates on 2020-11-08. For more details, see the Deprecation Schedule .
3.14.0
2019-09-11
- Service release, no new features.
- The IMA SDK version 3.14.0 deprecates on 2020-10-23. For more details, see the Deprecation Schedule .
3.13.1
2019-09-03
- Adds the ability to set the continuous play context for an ads request. For more details, see the setContinuousPlayback() .
- Adds the getUniversalAdIds() method to the Ad class.
- Adds the setAuthToken , getAuthToken , setFormat , getFormat and the StreamFormat enum.
- Fixes an error in nexus 5 devices that occurs when a container is removed before receiving an ad response.
- Fixes an issue where companion ads would only render once.
- Fixes an issue where unsupported ad types (nonlinears, VPAID) were not failing gracefully.
- The IMA SDK version 3.13.1 deprecates on 2020-09-11. For more details, see the Deprecation Schedule .
3.11.3
2019-06-11
- Fixes bug with is_lat setting on AOSP devices.
- The IMA SDK version 3.11.3 deprecates on 2020-09-03. For more details, see the Deprecation Schedule .
3.11.2
2019-04-16
- Fixes the following crash:
java.lang.ClassNotFoundException: Didn't find class "j$.util.concurrent.ConcurrentHashMap"
. - The IMA SDK version 3.11.0 deprecates on 2020-06-11. For more details, see the Deprecation Schedule .
3.11.0 Deprecated
2019-03-22
- Introduces support for the Open Measurement SDK for third-party viewability.
- Adds the
registerVideoControlsOverlay()
andunregisterAllVideoControlsOverlays()
methods toBaseDisplayContainer
. - The IMA SDK version 3.10.9 deprecates on 2020-03-22. For more details, see the Deprecation Schedule .
3.10.9
2019-03-13
- Fixed a race condition bug where ad UI sometimes doesn't render on subsequent ads after the first ad is skipped.
- Fixed a crash that occurred when calling the
getCompanionAds()
API. - The IMA SDK version 3.10.7 deprecates on 2020-03-22. For more details, see the Deprecation Schedule .
3.10.7
2019-02-19
- Adds the
onAdPeriodStarted()
andonAdPeriodEnded()
ad events. These events are supported for DAI only . - The IMA SDK version 3.10.6 deprecates on 2020-03-13. For more details, see the Deprecation Schedule .
3.10.6
2019-01-23
- Adds
seek()
method to the stream player interface. - Adds support for
AD_BUFFERING
ad event callbacks. - Containers must no longer be passed in the ad request. The new workflow
requires a container to be passed through an
AdsLoader
constructor. - Adds the
BaseDisplayContainer.destroy()
method. - Fixes a memory leak that occurred when video playback completes.
- Deprecates
requestNextAdBreak
. This API will be removed in a future release. Afterwards, ads will automatically be fetched 4 seconds before ad break time. - The IMA SDK version 3.10.2 deprecates on 2020-02-19. For more details, see the Deprecation Schedule .
3.10.2
2018-11-13
- Fixes a race condition that causes the second ad in a pod to throw a
VAST 402
error. - Adds frequency capping and competitive exclusion to the DAI Android SDK.
- Moves
getAdProgressInfo()
fromStreamManager
toBaseManager
. - Adds
getVastMediaHeight()
,getVastMediaWidth()
andgetVastMediaBitrate()
toAd
. - The IMA SDK version 3.9.4 deprecates on 2020-01-23. For more details, see the Deprecation Schedule .
3.9.4
2018-08-01
- Adds
getCompanionAds()
toAd
. This returns companion ads while using DAI only. - Adds new
CompanionAd
class. - Adds new
SKIPPABLE_STATE_CHANGED
event toAdEvent
. - Fixes an issue where the default setting for
focusSkipButtonWhenAvailable
wasn't being respected in some cases. - The IMA SDK version 3.9.0 deprecates on 2019-08-01. For more details, see the Deprecation Schedule .
3.9.0
2018-07-09
- Android TV is now supported.
- Adds
focusSkipButton()
toAdsManager
. This will only work on Android TV. - Adds
getFocusSkipButtonWhenAvailable()
toAdsRenderingSettings
, defaulting totrue
. This will only work on Android TV. - Adds
setFocusSkipButtonWhenAvailable()
toAdsRenderingSettings
. This will only work on Android TV. -
VideoAdPlayer
now extends theVolumeProvider
interface. Implementing this interface is now required for custom playback. - The IMA SDK version 3.8.7 deprecates on 2019-07-09. For more details, see the Deprecation Schedule .
3.8.7
2018-05-23
- Allows animation in HTML companion ads.
- The IMA SDK version 3.8.5 deprecates on 2019-05-23. For more details, see the Deprecation Schedule .
3.8.5
2018-04-09
- Fixes an issue with
ImaSdkSettings
being ignored. - Fixes an issue where there were build conflicts with com.android.support version files.
- Adds
setAdWillPlayMuted
toAdsRequest
. - Adds
setLoadVideoTimeout
toAdsRenderingSettings
. - The IMA SDK version 3.8.2 deprecates on 2019-04-09. For more details, see the Deprecation Schedule .
3.8.2
2018-01-24
- Adds
setLiveStreamPrefetchSeconds
toAdsRequest
. - Various documentation fixes.
- The IMA SDK version 3.7.4 deprecates on 2019-01-24. For more details, see the Deprecation Schedule .
3.7.4
2017-06-29
- Adds
setVastLoadTimeout
toAdsRequest
. - Adds
getSkipTimeOffset
toAd
. - The IMA SDK version 3.7.2 deprecates on 2018-06-29. For more details, see the Deprecation Schedule .
3.7.2
2017-05-25
- Adds
setDebugMode
toImaSdkSettings
. - The IMA SDK version 3.7.1 deprecates on 2018-05-25. For more details, see the Deprecation Schedule .
3.7.1
2017-03-24
- Resolves a namespace conflict when using Proguard.
- Jar size reduced by around 30KB.
- The IMA SDK version 3.7.0 deprecates on 2018-03-24. For more details, see the Deprecation Schedule .
3.7.0
2017-03-13
- Fixes an issue where some IMA classes were inadvertently merged into ProGuard's
a.a.a.a
package. - The IMA SDK version 3.6.0 deprecates on 2018-03-13. For more details, see the Deprecation Schedule .
3.6.0
2017-02-16
- Adds the following to
Ad
:-
getAdWrapperCreativeIds()
-
getAdvertiserName()
-
getCreativeAdId()
-
getCreativeId()
-
getDealId()
-
getSurveyUrl()
-
getUniversalAdIdRegistry()
-
getUniversalAdIdValue()
-
- Adds
AdsManager.requestNextAdBreak().
- Adds the following to
AdsRenderingSettings
:-
setEnablePreloading()
-
getEnablePreloading()
-
- Adds the following to
AdsRequest
:-
setContentDuration()
-
setContentKeywords()
-
setContentTitle()
-
- The IMA SDK version 3.5.2 deprecates on 2018-02-16. For more details, see the Deprecation Schedule .
3.5.2
2016-11-14
- Adds an SDK-owned video player that optionally handles ad playback.
- Adds
CompanionAdSlot.ClickListener
and methods to add and remove a listener. - Fixes an issue with invalid
getViewability()
error logs. - Fixes an issue with icons' clickthrough behavior and not rendering correctly.
- The IMA SDK version 3.4.0 deprecates on 2017-11-14. For more details, see the Deprecation Schedule .
3.4.0
2016-09-12
- Fixes a duplicate files error when using Google Play services version 9.0.0 and up.
3.3.2
2016-07-11
- Adds
AD_BREAK_STARTED
andAD_BREAK_ENDED
events to AdEventListener.onAdEvent callback.
3.2.1
2016-04-07
- Service release, no new features.
3.b13.3 (beta)
2015-09-10
- Service release, no new features.
3.b12.1 (beta)
2015-07-20
- Allows the user to customize ad UI elements using AdsRenderingSettings.setUiElements .
- Adds ability to play ad breaks manually instead of automatically. See Manual Ad Break Playback .
- Adds the restriction that ContentProgressProvider.getContentProgress should never return null.
- Adds AdEvent.TAPPED which will fire when the user taps on any non-clickable region of a video ad.
3.b11.4 (beta)
2015-05-21
- Adds the following to the API:
-
AdError.AdErrorCode.VAST_EMPTY_RESPONSE
-
AdError.getErrorNumber()
-
AdsRequest.setAdWillAutoPlay(Boolean)
-
CompanionAdSlot.isFilled()
-
ImaSdkSettings.setPlayerType(String)
-
ImaSdkSettings.setPlayerVersion(String)
-
3.b10.3 (beta)
2015-03-24
- Added
ImaSdkSettings.getMaxRedirects
andImaSdkSettings.setMaxRedirects
. - IMA API classes are now
final
. - SDK version numbers are now in the format 3.bX.Y with b to indicate the SDK's beta status.
- The following
AdError.AdErrorCode
values have been removed:-
API_ERROR
- instead useUNKNOWN_AD_RESPONSE
. -
PLAYLIST_MALFORMED_RESPONSE
- instead useUNKNOWN_AD_RESPONSE
. -
REQUIRED_LISTENERS_NOT_ADDED
- was not being raised by the SDK. -
VAST_INVALID_URL
- instead useVAST_LOAD_TIMEOUT
.
-
Beta v9
2014-10-17
- Adds the Ad APIs
getTitle
,getDescription
, andgetContentType
. - Adds information about ad pod position to the ad UI, for example, "Ad 1 of 4: (0:13)".
- You should no longer directly control the pause/play/resume of
ads using your video player. Instead, use
AdsManager.pause()
andAdsManager.resume()
.
Beta v8
2014-06-12
- Fixes an issue with the ad UI not clearing for skippable ads.
- Documents the error code for media file load timeouts.
Beta v7
2014-05-27
- Fixes an issue with Google Play services. The SDK now requires that Google Play services be built into your app. For more information, see Set Up Google Play services SDK .
Beta v6
2014-04-14
- Adds VAST 3 support.
- Adds partial VMAP support (parity with current Ad Manager ad rules).
- Adds the following to the API:
- AdError.AdErrorCode.ADS_REQUEST_NETWORK_ERROR
- AdEvent.AdEventType.LOG
- AdEvent.getAdData()
- AdPodInfo.getMaximumDuration()
- AdPodInfo.getPodIndex()
- AdPodInfo.getTimeOffset()
- Fixes a bug where mid-rolls with an optimized pod with a wrapper caused all other ads in the pod to be skipped.
- AdsRenderingSettings passed to the AdsManager will no longer be ignored.
- Fixed multiple bugs to add stability.
Beta v5
2013-12-12
- Fixes issue with skippable ads in playlists.
Beta v4
2013-10-15
- Added ability to reset correlator values by calling contentComplete on the AdsLoader.
Beta v3
2013-09-05
- Service release, no new features.
Beta v2
2013-07-07
- Public release of Beta version of SDK.
Closed Beta v2
2013-06-24
- Added API to set UI language on
ImaSdkSettings
object. Note that this is used to set the UI language, not the ad language. - Fixed conflict that was being encountered when an app included both IMA SDK and AdMob SDK libraries.
- Added logging for various internal performance metrics.
Closed Beta v1
2013-04-02
-
Initial Beta release. The following are known issues with the Beta release:
SDK-related
The following
AdEvents
available within the HTML5 IMA SDK are not supported within the Android v3 IMA SDK:IMPRESSION
,LOG
,SKIPPABLE_STATE_CHANGED
,STOPPED
,VOLUME_CHANGED
,VOLUME_MUTED
Sample App-related
- There is an intermittent issue where the ad player does not properly resume after the user has clicked through on an ad. For example, occasionally, when you return to the app after clicking through on an ad, resuming play of that ad causes it to skip to the end and complete, rather than resuming where it left off prior to click through.
- The ads returned by the "Instream 2" ad tag are not compatible with the v3 IMA Android SDK.
- The sample player does not automatically disable seeking (scrubbing) while ads are playing. Be sure to disable seeking in your video player while ads are being played.