- Bump AdMob to v23.3.0
- Add inventoryGroupId parameter
- Add support of Android 14 (API level 34)
- Add support for MRAID 2.0 specification
- Send SDK MRAID capability
- Fix MRAID iframe issues
- Do not send
deviceId
in config request
- Downgrade Moshi to 1.12 and Kotlin to 1.15.31
- Bump AdMob to v22.1.0
- Add support for MRAID v1 specification. Everything is supported except for useCustomClose and two-part creatives.
- Fix proguard issue with
RemoteConfigResponse
- Add null checks in
TopActivityFinder
- Add support of Android 13 (API level 33)
- Add support of Android 13 (API level 33)
- Fix error on Criteo init
- Add support of Android 12L (API level 32)
- Bump AdMob to v21.2.0
- Bump minSdkVersion to 19
- Deprecate API related to MoPub and stop supporting MoPub App Bidding
- Add ability to set Children’s Online Privacy Protection Act (“COPPA”) flag
- Fix ANR when fetching User Agent from WebView
- Bump AGP, Gradle and Kotlin version
- Bump Java Compiler version to 11
- Continuously test support of Android 11 (API level 30)
- Add support of Android 12 (API level 31)
- Features
- MoPub AppBidding: Add support for VAST Rewarded video ads
- GAM AppBidding: Add support for VAST Rewarded video ads
- Features
- MoPub AppBidding: Add support for VAST Video ads
- GAM AppBidding: Add support for VAST Video ads
- Bug fixes
- If SDK init is called from a worker thread, then GAID is fetched asynchronously in another worker thread to not block the caller's thread.
- Recover from corrupted network sending queue having an element with a huge size that could throw an OOM.
- Artifacts are now delivered through
Maven Central
repository instead ofJCenter
which is deprecated. - Handle retro compatibility of AdMob < v19.7.0
- Breaking changes
- Removed support of Google SDK < v19.7.0 (see https://developers.google.com/admob/android/migration)
- Features
- Added support of Google SDK v20.0.0
- Added support of Android 11 (API level 30)
- Bug fixes
- Reduce log level of network exception from error to info
- Fix infinite
NoSuchMethodException
when Proguard is used with method inlining enabled - Estimate size of in-memory queue and bound its size to avoid potential OOM
- Bug fixes
- Reduce log level of
UnknownHostException
from error to info
- Reduce log level of
- Bug fixes
- Fix crash when initializing the SDK
- Features
- Add remote logging support.
- Features
- Add a constructor without
NativeAdUnit
inCriteoNativeLoader
for InHouse integration - Add API to collect different levels of signals which will be used to bid based on context
- Add
Criteo.Builder#debugLogsEnabled
to enable useful logs to troubleshoot the SDK
- Add a constructor without
-
Breaking changes
- Remove
Context
parameter fromCriteoInterstitial
constructor - Remove
Parcelable
implementation fromAdSize
class - Move
CriteoInterstitialAdDisplayListener#onAdFailedToDisplay(CriteoErrorCode)
toCriteoInterstitialAdListener#onAdFailedToReceive(CriteoErrorCode)
. This callback is fired when an error happens after requesting an interstitial ad. - Move
CriteoInterstitialAdDisplayListener#onAdReadyToDisplay()
toCriteoInterstitialAdListener#onAdReceived(CriteoInterstitial)
. This callback is fired when an interstitial ad is ready to be displayed. - Provide default implementation in interstitial listener. Java 8 is required, see https://developer.android.com/studio/write/java8-support.
- Remove the deprecated
Criteo#init
method.Criteo.Builder#init
should be used instead. - Update InHouse API:
- Replace
Criteo#getBidResponse(AdUnit)
method byCriteo#loadBid(AdUnit, BidResponseListener)
- Rename
BidResponse
toBid
- Remove
BidResponse#isBidSuccess()
method, bid is a success whenBid
object is not null - Remove
BidResponse#getBidToken()
method andBidToken
class, theloadAd
methods (inCriteoBannerView
,CriteoInterstitial
,CriteoNativeLoader
) take aBid
object instead
- Replace
- Update AppBidding API:
- Replace
Criteo#setBidsForAdUnit(Object, AdUnit)
method byCriteo#enrichAdObjectWithBid(Object, Bid)
- Use
Criteo#loadBid(AdUnit, BidResponseListener)
method to provideBid
object
- Replace
- Make
CriteoNativeAdListener
an interface instead of an abstract class - Replace
View
parameter by aCriteoBannerView
inCriteoBannerAdListener#onAdReceived
- Remove
CriteoBannerAdListener#onAdClosed
- Remove
CriteoBannerAdListener#onAdOpened
- Remove
-
Features
- CriteoBannerView is now a custom view that can be included directly in a layout file.
- Add live bidding: Load a fresh bid within a pre-determined time budget and use any valid cached bid as a fallback.
- Add
Criteo#getVersion()
method returning the version of the SDK at runtime.
- Bug fix
- Ensure
CriteoInterstitialActivity
does not crash when theapplication
object is null.
- Features
- MoPub Header-Bidding: Handle subclasses of
MoPubView
andMoPubInterstitial
- Server Side bidding:
loadAdWithDisplayData
added toCriteoBannerView
&CriteoInterstitial
- MoPub Header-Bidding: Handle subclasses of
- Bug fixes
- Fix wrong interstitial orientation when user starts the application in landscape
- Features
- Fetch User-Agent asynchronously to speed up the SDK initialization.
- MoPub Header-Bidding: clean MoPub's keyword to support Auto-Refreshing banners
- Features
- Provide legal privacy text for native in
CriteoNativeAd#getLegalText
- Artifacts are now delivered through
JCenter
repository instead of a custom one: from this version, the linemaven { url "https://pubsdk-bin.criteo.com/publishersdk/android" }
can be removed.
- Provide legal privacy text for native in
- Features
- Advanced native ads public release; integration instructions and documentation available on our support website
-
Features
- Insert
crt_size
keywords for DFP, MoPub and Custom Header-Bidding integration on banner - Insert
crt_size
keywords for DFP Header-Bidding integration on interstitial - Deactivate some debug logs in release build
- Insert
-
Bug fixes
- Fix all known memory leaks