Release Notes
iOS SDK V3 releases
3.10
3.10.6
2024-10-28
The swift package manager of this version can be found here.
Library Updates
Updated RTBSDK to v1.4.4 (Improved OMID handling).
3.10.5
2024-10-14
The swift package manager of this version can be found here.
Library Updates
Updated RTBSDK to v1.4.3 (fixed an issue with MRAID click handling).
Updated AppNexus to v9.1.0.
Updated AppLovin to v13.0.0.
Updated Ogury to v4.4.2 (updated OMSDK to support Xcode 16).
Updated Smaato to v22.9.0 (updated OMSDK to support Xcode 16).
Updated Pubnative to v3.1.1 (updated OMSDK to support Xcode 16).
3.10.4
2024-10-07
The swift package manager of this version can be found here.
Library Updates
Pubnative to 3.1.0
3.10.3
2024-10-02
The swift package manager of this version can be found here.
Fixes
Fix an issue where the shake-debug screen could be presented multiple times.
Fix an issue where Mintegral Rewarded video wasn't working in some scenarios.
Added
AATAdInfo
object containing information about pricing to RewardedAd
Library Updates
GraviteRTB to 1.4.2
3.10.2
2024-09-18
The swift package manager of this version can be found here.
Fixes
Fixed an issue with fullscreen ads that was interrupting the ad loading process.
3.10.1
2024-09-17
The swift package manager of this version can be found here.
Fixes
Fixed an issue with banner placements history where the class properties were not exposed to Objective-C.
3.10.0
2024-09-12
Improvements
Added support for ad quality management in fullscreen and rewarded video formats using AppHarbr v1.16.0. To implement AdQuality, please follow the integration guide.
Added support for GraviteRTB native ads format.
Added support for Vungle AppOpen ads format.
Added
AATAdInfo
object containing information about pricing across multiple ad formats, including Fullscreen, Rewarded, Native Ads, and Infeed Banners.Implemented a completely new shake debug screen using SwiftUI for iOS 15+. Older versions will display the previous shake debug screen.
Creative Timestamp Added the creative timestamp to the placement-loaded ads screen.
Shake Debug Info Sharing You can now share a summary of the shake debug information via email using the share button in the new shake debug screen.
Introduced a new API for retrieving creative history across all banner formats.
Added support for passing the user ID to ad networks for server-side verification of rewarded videos.
Removed Ad Networks
Bluestack
Library Updates
GraviteRTB to 1.4.0
Update GMA to 11.8.0
Update GoogleMobileAdsMediationFacebook to 6.15.2.0
Update AppLovinSDK to 12.6.1
Update AppNexusSDK to 9.0.0
AppNexus is now an optional ad network. To include it add the following line to your Podfile:
pod 'AATKit/AppNexus'
Update AmazonPublisherServicesSDK to 4.9.7
Update InMobiSDK to 10.7.5
Update MintegralAdSDK to 7.7.1
Update Pubnative to 3.0.4
Update UnityAds to 4.12.2
Update VungleAds to 7.4.0
Update IronSourceSDK to 8.3.0.0
Update SourcePoint (ConsentViewController) to 7.7.1
Update TappxSDK to 4.1.8
Update SuperAwesome to 9.4.0
Update KidozSDK to 9.1.5
3.9
3.9.2
2024-09-04
The swift package manager of this version can be found here.
Library Updates
GraviteRTB to 1.3.5, fixing Google Bidding behaviour for banner ads.
3.9.0
2024-07-19
The swift package manager of this version can be found here.
Note: AATKit now requires apps to build with Xcode 15.3 or above.
API Changes
The
AATImpression
object returned byAATImpressionDelegate
has been updated as follows:The
mediationType
,price
,currencyCode
, andprecision
fields have been removed.A new field,
priceInfo
of typeAATPriceInfo
, has been added. This field includes the following information:price, currency and precision type
Improvements
The
AATAdMobDSPAdapter
has been renamed toAATGooglePartnerBidding
.:If you are not using AATKit's default ad networks, add the following line to your Podfile:
pod 'AATKit/AATGooglePartnerBidding'
.
Enhanced the internal loading logic in AATKit to report failures instead of issuing warning logs when the ViewController is unavailable.
The above enhancement fixed a bug in the AATAdMobMediationAdapter where failures were not reported immediately, previously being reported as timeout failures.
Enhanced the shake debug screen to include the following details:
Type of the placement.
Active frequency capping settings.
Banner auto-reload intervals.
Initial delay and remaining time.
Display of the bidder (DSP name) for the GraviteRTB marketplace.
Introduced a network option to enforce the RTBSDK close button for MRAID fullscreen ads.
Note: If the MRAID creative already includes a close button and
forceCloseButtonForMraid
is set to true, the MRAID creative will display two close buttons.
let conf = AATConfiguration()
...
let graviteRTBOptions = AATGraviteRTBOptions(forceCloseButtonForMraid: false)
conf.adNetworksOptions = .init(appNexusOptions: nil,
feedAdOptions: nil,
adMobOptions: nil,
dfpOptions: nil,
datonomyOptions: nil,
superAwesomeOptions: nil,
graviteRTBOptions: graviteRTBOptions)
...
AATSDK.initAATKit(with: conf)
The
AATImpressionDelegate
now delivers precise price information for all mediation types, for ad networks that support pricing data.
Libraries Updates
GraviteRTB to 1.3.3
AppLovin to 12.5.0
AppNexus to 8.11.3
Amazon to 4.9.6
AppConsent to 4.9.0
Criteo to 6.1.2
Datonomy to 1.0.0
Facebook to 6.15.1.0
InMobi to 10.7.4
MintegralSDK to 7.6.7
OgurySdk to 4.4.0
GoogleMobileAds to 11.6.0
GoogleUserMessagingPlatform to 2.5.0
Prebid to 2.2.3
Pubnative to 3.0.3
Smaato to 22.8.4
SmartAd to 7.24.1
UnityAds to 4.12.0
TeadsSDK to 5.1.3
Tappx to 4.1.4
Vungle to 7.3.2
IronSource to 8.1.1
SuperAwesome to 9.3.5
SourcePoint to 7.6.10
Kidoz to 9.1.3
New Libraries
Implemented Kidoz ad network version 9.1.3, which includes banners, fullscreen ads, and rewarded videos. Kidoz is optional. To add it, include the following line in your Podfile:
pod 'AATKit/Kidoz'
Integrated the new CMP: SFBX (AppConsent) version 4.9.0. To add it, include the following line in your Podfile:
pod 'AATKit/AppConsentCMP'
Usage:
import AATAppConsentAdapter .... let configuration = AATConfiguration() let cmp = AATCMPAppConsent(appKey: "<APP_KEY>", forceGDPR: true, fullscreen: true) consent = AATManagedConsent(cmp: cmp, delegate: self) // other AATKitConfigurations AATSDK.initAATKit(with: configuration)
3.8
3.8.7
2024-06-19
The swift package manager of this version can be found here.
Fixes
Fixed an issue with the sticky banner placement (AATStickyBannerPlacement) where auto-reloading did not continue if
AATSDK.controllerViewWillDisappear()
was called twice.
3.8.6
2024-05-28
The swift package manager of this version can be found here.
Fixes
Fixed issues with XCFrameworks caused by missing values in the Info.plist file.
Updates
Update IronSource to 8.1.0.
Update Tappx to 4.1.1.
3.8.5 (Swift Package Manager only)
2024-05-27
The swift package manager of this version can be found here.
Fixes
Fixed an issue with Google Bidding within the Swift Package Manager (SPM) release.
3.8.4
2024-05-21
The swift package manager of this version can be found here.
Fixes
Fixed an issue with AmazonHB fullscreen where impressions and viewable impressions were not counted.
3.8.3
2024-05-14
The swift package manager of this version can be found here.
Updates
Note: As mentioned in their release notes, the following ad networks should no longer block publishing apps to the AppStore
Update YOC to 4.1.5.
Update SuperAwesome to 9.3.4.
3.8.2
2024-05-02
The swift package manager of this version can be found here.
Updates
Note: The following updates add the Apple Privacy Manifest file. They are now default ad networks.
Update Criteo to 6.1.0.
Update SmartAd to 7.23.4.
Update Tappx to 4.1.0.
3.8.1
2024-04-26
The swift package manager of this version can be found here.
Fixes
Fixed an issue with the Swift Package Manager where not all ad networks were updated.
Update
Update GoogleUserMessagingPlatform to 2.4.0.
3.8.0
2024-04-25
Note: The following ad networks haven't yet added the Apple Privacy Manifest file and will be optional dependencies for AATKit to avoid blocking publishing apps on the AppStore:
Criteo
Prebid
Tappx
Bluestack
Datonomy
Library Updates
AppLovin to 12.4.1
AppNexus to 8.11.1
Amazon to 4.9.2
Criteo to 6.0.0
FeedAd to 1.6.0
Facebook to 6.15.0.0
InMobi to 10.7.1
MintegralAdSDK to 7.6.3
OgurySdk to 4.2.3
GoogleMobileAds to 11.3.0
GoogleUserMessagingPlatform to 2.3.0
GraviteRTB to 1.1.0
MintegralSDK to 7.6.3
Pubnative to 3.0.0
Smaato to 22.8.2
UnityAds to 4.10.0
TeadsSDK to 5.1.2
Vungle to 7.3.1
IronSource to 8.0.0
SuperAwesome to 9.3.3
SourcePoint to 7.6.5
AppNexus to 8.11.2
YOC to 4.1.4
Smart-Display-SDK to 7.23.3
Improvements
Add Xcode 15 support.
Updated the minimum deployment target to iOS 12.
Added support for privacy manifest files.
Added "initial rules" feature, where placement can be set to use a subset of ad rules for the first load. This is intended to allow the placement's first load to happen faster.
Changing the consent state will now trigger rule download - to pick the optimal set of rules for the given consent setting.
Early initialise of GoogleMobileAds.
AdmobMediationAdapter: allow all banner sizes as a fallback in case no supported size is provided.
Fixes
Fixed an issue where SuperAwesome empty ads were not reported as failures.
3.7
3.7.8
2024-04-30
The swift package manager of this version can be found here.
Improvements
AdmobMediationAdapter: allow all banner sizes as a fallback in case no supported size is provided.
3.7.6
2024-04-11
The swift package manager of this version can be found here.
Fixes
Fixed a crash with AATAdMobMediationAdapter.
3.7.5
2024-04-05
The swift package manager of this version can be found here.
Changes
Update GraviteRTB to v1.0.3 which fixes an issue with the child-directed handling (COPPA).
3.7.4
2024-04-03
The swift package manager of this version can be found here.
Changes
Integrate AppNexus (Xandr) v8.10.2 using Cocoapods instead of manual integration to fix the inaccessible resources issue.
3.7.3
2024-03-28
The swift package manager of this version can be found here.
Fixes
Fixed a crash when applying A/B placements testing if the placements are configured without shares.
Fixed an IronSource issue where load failure was always reported as a timeout failure.
3.7.2
2024-03-08
The swift package manager of this version can be found here.
API Changes
Introduce the new CMP reshow feature in case of consent rejection.
A new API is available for the
AATManagedConsent
public func showIfNeededOrRejected(daysAgo: Int, viewController: UIViewController)
Usage:
consent?.showIfNeededOrRejected(daysAgo: 1, viewController: controller)
where consent is an instance ofAATManagedConsent
.If you would like to periodically ask again users who rejected consent, simply replace your old
showIfNeeded
calls with the new method. Read more here.
Introduce a new API for all placements for passing multi-content targeting URLs called
multiContentTargetingUrls
.Not all ad networks support multi-content targeting URLs (Currently only Google).
The multi-content targeting URLs would override the single one.
Usage:
placement.multiContentTargetingUrls = ["URL1", "URL2"]
Usage for InfeedBannerPlacement:
bannerRequest.multiContentTargetingUrls = ["URL1", "URL2"]
Fixes
Fixed an issue where the tablet banner size
banner728x90
was not being requested properly.
3.7.1
2024-03-06
The swift package manager of this version can be found here.
Changes
Downgrade Pubnative (Verve) to v2.20.0.
3.7.0
2024-03-04
The swift package manager of this version can be found here.
Changes
Fixed SourcePoint edit consent was not working properly.
Fixed an issue where IDFA was not viewable in dark mode in the shake debug ViewController.
Fixed Rendering of Google banners when the source is DFP/Prebid.
Library Updates
GraviteRTB to 1.1.0-beta1
Pubnative to v2.21.1
New Ad Networks
Google Partner Bidding supporting banner and fullscreen formats.
Google Partner Bidding is a default ad network. If you are not using the default AATKit ad networks, you can include Google Partner Bidding by adding this line to your Podfile:
pod 'AATKit/AATAdMobDSPAdapter'
.
3.6
3.6.0
2024-02-27
The swift package manager of this version can be found here.
New Ad Networks
Integrate the new ad network IronSourceNew using multiple instances (Banners / Interstitial / Rewarded Videos).
Version 7.7.0.0.
Removed Ad Networks
Remove the old IronSource integration (Interstitial / Rewarded Videos).
Changes
Remove Pubnative offset options for interstitial and rewarded video formats.
Remove the deprecated
AATPubNativeOptions
fromAATAdNetworksOptions
.
Library Updates
AmazonPublisherServicesSDK to 4.7.8
AppLovinSDK to 12.1.0
AppNexus to 8.10.2
GoogleMobileAdsMediationFacebook to 6.14.0.0
Smaato to 22.6.1
MintegralAds to 7.5.6
SmartAd to 7.23.
UnityAds to 4.9.2
TeadsSDK to 5.1.0
VungleAds to 7.2.2
Tappx to 4.0.10
SuperAwesome to 9.3.1
prebid to 2.2.0
GraviteRTB to 1.0.0-beta11
3.5
3.5.3
2024-02-02
The swift package manager of this version can be found here.
Fixes
Fixed an issue that blocks publishing apps to the AppStore due to the
UIwebView
usage in the GraviteRTB SDK.
Library Updates
GraviteRTB SDK to v1.0.0-beta7
3.5.2
2024-01-18
The swift package manager of this version can be found here.
Fixes
Fixed an issue where SuperAwesome network options were not exposed to Objective-C.
3.5.1
2024-01-17
The swift package manager of this version can be found here.
New Ad Networks
Integrate the new Ad Network SuperAwesome, supporting banner, fullscreen and rewarded video ads.
SuperAwesome is an optional ad network. To add it, add this line to your Podfile:
pod AATKit/SuperAwesome
.
Library Updates
GraviteRTB SDK to 1.0.0-beta4.
Other Changes
Remove AdColony ad network.
Removed deprecated CMPOgury.
Improve SDK initialisation logs to contain info about the used consent.
3.4
3.4.3
2023-12-29
The swift package manager of this version can be found here.
Fixes
Fixed an issue where the consent value wasn't passed properly while requesting the rules.
Avoid showing the shake debug screen with every shake if it's already presented.
3.4.2
2023-12-18
The swift package manager of this version can be found here.
Library Updates
Mintegral SDK to 7.5.3. As Mintegral is now TCF-compliant, make sure it is included in your CMP configurations.
3.4.1
2023-12-08
The swift package manager of this version can be found here.
Fixes
Observe the CCPA consent string in UserDefaults even if the managed consent is used.
Expose
AATCollapsibleBannerOptions
to Objective-C.Expose
AATAsyncInfeedBannerPlacement
to Objective-C.Expose
AATAsyncNativeAdPlacement
to Objective-C.Change Tappx to be a default ad network.
3.4.0
2023-12-04
The swift package manager of this version can be found here.
API Changes
[Important] AATKit will not use the info.plist configurations anymore. Instead, you can use the new AATAdNetworkOptions object while initialising AATKit. Please see Ad Networks section.
Deprecate Ogury CMP. It will no longer be supported starting AATKit version 3.5.
Introduce a new public API
func isConsentOptIn() -> Bool
to check if consent is OptIn or not. For more information, please check consent documentation.Introduce a new public API
func getDebugInfoObject() -> AATDebugInfo?
for obtaining the debug information that will be presented if the shake debug screen is enabled. For more information, please check the shake debug documentation.Introduce a new BannerCache delegate called
AATBannerCacheStatusDelegate
representing the cache status. For more information, see banner cache documentation.Setting the banner cache retry intervals to the
AATBannerCacheConfiguration
instead of the info.plist. For more information, see the banner cache documentation.Publishers can pass the collapsible banner options (AATCollapsibleBannerOptions) to all banner placements instead of using the info.plist.
Remove the deprecated method
AATSDK.setInitialRules(:)
. Please useAATConfiguration.initialRules
instead.Remove the deprecated method
setRuleCachingEnabled(:)
. Please useAATConfiguration.shouldCacheRules
instead.Deprecate AATPubNativeOptions for setting the Pubnative offset options. They will no longer be supported by HyBid SDK v3.0.
Improvements
Add CCPA support. For more information, see our CCPA documentation.
Allow passing max height of inline adaptive Google banners (GAM and AdMob) using the
AATAdNetworksOptions
passingAATAdMobOptions
orAATDFPOptions
instances. For more information, see Google Mobile Ads documentation section.Introduce a completely new interface for the shake debug screen. Publishers can customise it by using the new public API
func configureDebugScreen(configuration: AATDebugScreenConfiguration)
. For more information, see Shake Debug documentation.(Requires iOS 13 and above) Introduce the new
AATAsyncInfeedBannerPlacement
that wraps theAATInfeedBannerPlacement
and supports concurrency. For integration steps, please see Async Infeed Banner documentation.(Requires iOS 13 and above) Introduce the new
AATAsyncNativeAdPlacement
wraps theAATNativeAdPlacement
and supports concurrency. For integration steps, please see Async Native Ads documentation.
New Ad Networks
GraviteRTB SDK supporting banner and fullscreen formats.
Tappx SDK (version 4.1.0) supporting banner, fullscreen, and rewarded video formats.
Tappx is an optional ad network. To add it, add this line to your Podfile:
pod ‘AATKit/Tappx’
.
Fixes
Fix an issue with unity banners where the delegate method
bannerViewDidShow(:)
wasn't implemented.Fix an issue where sometimes Unity fullscreen and rewarded video ads are not shown properly.
Fix an issue where the "unrecognized bundleID" error wasn't being logged if the Gravite server didn't recognize the application bundle ID.
Fix an issue where
AATConfiguration
description wasn't logged properly.Fix an issue with AppNexus multi-size banners where the banner size wasn't adapting to the actual ad creative size.
Library Updates
GoogleMobileAds to 10.12.0
AppLovin to 11.11.4
AdColony to 4.9.0
AppNexus to 8.9.0
AmazonHB to 4.7.6
Criteo to 5.0.4
GoogleUserMessagingPlatform to 2.1.0
GoogleMobileAdsMediationFacebook to 6.12.0.1
FeedAd to 1.5.4
InMobi to 10.6.0
MintegralAds to 7.4.8
Ogury to 4.2.2
Smaato to 22.4.0
SmartAd to 7.23.1
UnityAds to 4.9.1
YOC to 4.1.1
Vungle to 7.2.0
Prebid to 2.1.6
Pubnative to 2.20.0
IronSource to 7.5.1
SourcePoint to 7.4.3
3.3
3.3.10
2023-11-21
The swift package manager of this version can be found here.
Library Updates
Amazon SDK to 4.7.7.
3.3.9
2023-11-13
The swift package manager of this version can be found here.
Library Updates
InMobi SDK to 10.6.0.
3.3.8
2023-10-25
The swift package manager of this version can be found here.
Library Updates
AmazonPublisherServicesSDK to 4.7.6.
Fixed crash on
DTBAdView
when used withUITableView
.Fixed compilation error on Swift apps.
Internal SDK optimization.
3.3.7
2023-10-23
The swift package manager of this version can be found here.
Fixes
Fix an issue with Pubnative (Verve) version 2.20.0 where the framework had a wrong beta version that was blocking publishing apps to the AppStore.
3.3.6
2023-10-19
The swift package manager of this version can be found here.
Library Updates
Update pubnative to 2.20.0
Fixes
Fix an issue where the "unrecognized bundleID" error wasn't being logged if the Gravite server didn't recognize the application bundle ID.
Fix an issue where
AATConfiguration
description wasn't logged properly.
3.3.5
2023-09-29
The swift package manager of this version can be found here.
Library Updates
GoogleMobileAds to v10.11.0
3.3.4
2023-09-18
The swift package manager of this version can be found here.
Fixes
Fix an issue where sometimes Unity fullscreen and rewarded video ads are not shown properly.
Fix an issue with unity banners where the delegate method
bannerViewDidShow(:)
wasn't implemented.
3.3.3
2023-09-01
The swift package manager of this version can be found here.
Updates
Update Verve (Pubnative) to v2.19.0
3.3.2
2023-08-25
The swift package manager of this version can be found here.
Updates
Update DatonomySDK to v1.0.0
3.3.1
2023-08-15
The swift package manager of this version can be found here.
Fixes
Change DatonomySDK to be an optional Library.
3.3.0
2023-08-07
The swift package manager of this version can be found here.
NOTE The minimum ios target is now ios 11.0 and requires Xcode 14.3
API Changes
Introduce a new factory method for initializing the banner cache.
instead of
AATBannerCache(cacheConfiguration: configuration)
useAATSDK.createBannerCache(configuration: configuration)
.
Deprecate
AATSDK.setInitialRules(:)
. Please useAATConfiguration.initialRules
instead.Deprecate
AATSDK.setRuleCachingEnabled(:)
. Please useAATConfiguration.shouldCacheRules
instead.Introduce a new way to Opt-out from showing the CMP
AATManagedConsent can be initialized by passing a new parameter
showIfNeededSetting
let consent = AATManagedConsent(cmp: cmp, delegate: self, showIfNeededSetting: .always)
showIfNeededSetting
can be one of the following:always
: always show the CMP.never
: never show the CMP, However, the publisher can still call theeditConsent
API.serverSideControl
: showing the CMP will be based on the dashboard configurations.
It has a default value of:
serverSideControl.
Introduce new method
AATSDK.isConsentOptIn()
, returning "consent opt-in status" returned by our server rules. Only returns meaningful information after the rules are downloaded.
New Ad Networks
Datonomy SDK, for an overview of what Datonomy provides, please check their documentation.
Datonomy is an optional library, you can add it by adding this line
pod 'AATKit/
Datonomy'
to your Podfile.To add your Datonomy API key, add this key-value pair to your info.plist:
Key:
AATDatonomyApiKey
Value:
YOUR_DATONOMY_API_KEY
Mintegral SDK (version 7.2.9), supporting Banner, Fullscreen, and Rewarded Video formats.
Integrate the new CMP: SourcePoint (version 7.0.2).
You can add it by adding this line
pod 'AATKit/
SourcePoint'
to your Podfile.You can use it as follows:
import AATSourcePointCMPAdapter .... let configuration = AATConfiguration() let cmp = AATCMPSourcepoint(accountId: "YourAccountID", propertyId: "YourPropertyId", propertyName: "YourPropertyName", pmId: "YourPMId") consent = AATManagedConsent(cmp: cmp, delegate: self) // other AATKitConfigurations AATSDK.initAATKit(with: configuration)
Improvements
Implement Frequency Capping for the banner cache.
Implement weekly and monthly frequency capping.
Enhance the logic for waterfall failure scenarios for the sticky banner placement.
Improve AATKit logs:
Improve logs formatting.
Add info-level logs in public APIs.
Always log
initAATKit(with configuration: AATConfiguration?)
andsetLogLevel(:)
methods.
Introduce Google collapsible banners. The following steps are necessary to integrate collapsible banners:
Specify the collapsible banners position. Add the following to the Info.plist:
Key:
<PLACEMENT_NAME>.collapsiblePosition
Value:
top/bottom
Specify the frequency capping for collapsible banners. Add the following to the Info.plist:
Key:
<PLACEMENT_NAME>.minDelayBetweenCollapsibleBannersInSeconds
Value: Integer (type: Number). Please add 0 if you don't need to apply frequency capping on collapsible banners.
All the public methods are logged now at debug level.
Library Updates
OgurySdk to 4.1.4
smaato-ios-sdk to 22.2.1
AmazonPublisherServicesSDK to 4.7.3
VungleAds to 7.0.1
GoogleMobileAds to 10.7.0
InMobiSDK to 10.5.6
IronSourceSDK to 7.3.1
AppLovinSDK to 11.10.1
UnityAds to 4.8.0
CriteoPublisherSdk to 5.0.0
Criteo now requires the minimum deployment target of iOS 12.
TeadsSDK to 5.0.27
Smart-Display-SDK to 7.21.0
AppNexusSDK to 8.6.0
Prebid to 2.1.2
SourcePoint to 7.2.0
Pubnative to 2.18.1
YOC to 3.2.1
MintegralAdSDK to 7.3.9
Fixes
Fix an issue with the autoload banner placement where ad spaces were not counted properly in case of waterfall failure.
Fix an issue where IronSource ad requests were not executed.
Fix an issue where AutoLoad banner placement auto-reloading was not resumed automatically after
AATSDK.controllerViewDidAppear(controller:)
call.
3.2
3.2.3
2023-06-27
The swift package manager of this version can be found here.
Fixes
Fix an issue where AutoLoad banner placement auto-reloading was not resumed automatically after
AATSDK.controllerViewDidAppear(controller:)
call.
3.2.2
2023-06-21
The swift package manager of this version can be found here.
Fixes
Fix an issue where IronSource ad requests were not executed.
3.2.1
2023-06-12
The swift package manager of this version can be found here.
Fixes
Fix an issue with the autoload banner placement where ad spaces were not counted properly in case of waterfall failure.
3.2.0
2023-05-31
The swift package manager of this version can be found here.
Library Updates
AppLovin to v11.7.1
Xandr (AppNexus) to 8.3.0
Bluestack to 4.1.8
GoogleMobileAds to v10.0.0
GoogleMobileAds No longer serve ads to iOS 11. iOS 12 is required to retrieve ads. Keep supporting iOS 10.
An Ad Manager app ID is now required for all Ad Manager apps. The ID is in the form:
ca-app-pub-################~##########
. See Update your Info.plist for more details.
GoogleMobileAdsMediationFacebook to 6.12.0.1
FeedAd to 1.5.3
InMobi to v10.5.3
Ogury to v4.0.0
Prebid to 2.0.8
Pubnative to 2.17.0
Smaato to 22.0.1
Equativ (SmartAd) to 7.20.0
UnityAds to 4.5.0
Vungle to 6.12.2
YOC to 3.1.1
TeadsSDK to v5.0.25
Criteo to 4.6.0
API Changes
The placement-specific delegate method
func aatCurrentlyDisplayed(placement: AATPlacment)
has been renamed tofunc aatPauseForAd(placement: AATPlacement)
.Placements will pass themselves to
AATStatisticsDelegate
listener methods as a parameter calledplacement
of typeAATPlacement
. This parameter will let the delegates know which placement triggered the delegate method. The placement name can be checked by using the method:placement.getName()
.Changed APIs:
func AATKitCountedAdSpace(placement: AATPlacement?)
func AATKitCountedRequest(placement: AATPlacement?, for network: AATAdNetwork)
func AATKitCountedResponse(placement: AATPlacement?, for network: AATAdNetwork)
func AATKitCountedImpression(placement: AATPlacement?, for network: AATAdNetwork)
func AATKitCountedNetworkImpression(placement: AATPlacement?, for network: AATAdNetwork)
func AATKitCountedVImpression(placement: AATPlacement?, for network: AATAdNetwork)
func AATKitCountedClick(placement: AATPlacement?, for network: AATAdNetwork)
func AATKitCountedDirectDealImpression(placement: AATPlacement?, for network: AATAdNetwork)
func AATKitCountedMediationCycle(placement: AATPlacement?)
Placements will pass themselves to
AATImpressionDelegate
listener methods as a parameter calledplacement
of typeAATPlacement
. This parameter will let the delegates know which placement triggered the delegate method. The placement name can be checked by using the method:placement.getName()
.Changed APIs:
func didCountImpression(placement: AATPlacement?, _ impression: AATImpression)
Add child-directed support that enables publishers to treat their content as child-directed while requesting ads.
Note: if AdNetwork doesn't support child-directed Requests, AATKit will skip this network while requesting Ads.
API:
public static func setIsChildDirected(_ isChildDirected: Bool)
Usage:
AATSDK.setIsChildDirected(true)
For more information, please check the child-directed documentation.
Provide impression-level revenue data via the
AATImpression
objectAdd
currencyCode
andprecision
properties to theAATImpression
object.If the ad network provides impression-level revenue data, AATKit will use this information during the AATImpression instantiation and pass it to AATImpressionDelegate via the
func didCountImpression(placement: AATPlacement?, _ impression: AATImpression)
callback. Otherwise, AATKit will detect and collect the impression-level information internally and provide it to the impression delegate via the samefunc didCountImpression(placement: AATPlacement?, _ impression: AATImpression)
callback.Currently, only Google Mobile Ads supports impression-level revenue data.
Introduce new banner placement type:
AATAutoLoadBannerPlacement
andAATAutoLoadMultiSizeBannerPlacement
which are based onAATBannerCache
. They are intended to replace bothAATStickyBannerPlacement
andAATMultiSizeBannerPlacement
hence, they have precisely the same functionality and provide the same APIs.Creating the placement:
Swift:
var placement = AATSDK.createAutoLoadBannerPlacement(name: "<PLACEMENT_NAME>", size: .banner320x50)
Objective-C:
id<AATStickyBannerPlacement> placement = [AATSDK createStickyBannerPlacementWithName:@"<PLACEMENT_NAME>" size:AATBannerPlacementSizeBanner300x50];
For more information, please check auto-load banners and multi-size auto-load banners documentation.
New Ad Networks
IronSource SDK (version 7.2.7), supporting Fullscreen and rewardedVideo formats.
You can add it by adding this line
pod 'AATKit/IronSource'
to your Podfile.
Improvements
Implement Google Mobile Ads Fluid banners.
Extend cached rules' lifetime.
Improve AATAdMobMediationAdapter logs.
Validate that all AATSDK public APIs are called from the main thread.
Throttle download rules request when failed.
Add internal custom timeout for Prebid requests (3.5 seconds).
Fixes
Fix an issue in the fullscreen placement where sometimes the clicks/vImp callbacks are not fired.
Fix an issue in the fullscreen placement where sometimes the loaded ad was set to nil while needed.
Fix an issue where native and banner ads sometimes don't call the proper app pause/resume callbacks.
Fix an issue with the reporting API request where the language parameter wasn't sent in the right format.
Fix an issue with rules skipping where some valid ad networks might be skipped.
Fix an issue where Google AdManager child accounts were being ignored.
3.1
3.1.6
2023-04-05
The swift package manager of this version can be found here.
Fixes
Fix an issue with the reporting API request where the language parameter wasn't sent in the right format.
Fix an issue with rules skipping where some valid ad networks might be skipped.
3.1.5
2023-03-20
The swift package manager of this version can be found here.
Fixes
Fix an issue with the fullscreen placement where sometimes the
hasAd()
method was returning true while having no ads.
3.1.4
2023-02-21
The swift package manager of this version can be found here.
Library Updates
Update Pubnative SDK to version 2.17.0
3.1.3
2023-02-16
The swift package manager of this version can be found here.
Fixes
Fix an issue with DFP and AdMob banners where multiple sizes and custom sizes banners were not requested properly.
3.1.2
2023-02-02
The swift package manager of this version can be found here.
Fixes
Fix an issue where enable/disable debug screen APIs weren't working properly.
Fix an issue with Fullscreen frequency capping.
3.1.1
2023-01-12
The swift package manager of this version can be found here.
Fixes
Fix an issue with InMobi ad requests.
Fix an issue where some work items were not cancelled properly.
3.1.0
2022-12-16
The swift package manager of this version can be found here.
New ad networks
Teads SDK (version 5.0.22), supporting video banner ads.
Teads is an optional ad network. You can add it by adding this line
pod 'AATKit/Teads'
to your Podfile.
Library Updates
AppLovin to v11.6.0
Xandr (AppNexus) to v8.2.0
AmazonHB to v4.5.6
Bluestack to v4.1.3
GoogleMobileAds to v9.13.0
GoogleMobileAdsMediationFacebook to v6.12.0.0
FeedAd to v1.5.2
InMobi to v10.1.2
Ogury to v2.2.0
Prebid to v2.0.5
Pubnative to v2.16.1
Smaato to v21.7.8
Equativ (SmartAd) to v7.19.2
UnityAds to v4.4.1
Vungle to v6.12.1
YOC to v3.0.0
Changes
Xandr (AppNexus) update requires a new identifier for initialising the network SDK, make sure to have network keys updated with memberId in the extraInfo field.
Implement the “Placements initial delay” feature for all ad formats.
This feature allows publishers to delay the provision of ads for a configurable amount of seconds after the first app fresh install.
Publishers can control the initial delay for each placement using the AddApptr dashboard in the create/edit placements popup.
Provide the "supply chain object" to Equativ (SmartAd Server) ad requests.
Placements will pass themselves to all placements-specific listener methods as a parameter called
placement
of typeAATPlacement
to their delegates. This parameter will enable the delegates to know which placement triggered the delegate method. The placement name can be checked by using the method:placement.getName()
.Changed APIs:
func aatHaveAd(placement: AATPlacement)
func aatNoAd(placement: AATPlacement)
func aatAdCurrentlyDisplayed(placement: AATPlacement)
func aatResumeAfterAd(placement: AATPlacement)
func aatUserEarnedIncentive(placement: AATPlacement, aatReward: AATReward)
func aatHaveAdWithBannerView(placement: AATPlacement, bannerView: AATBannerPlacementWrapperView)
General logging improvements.
Fixes
Fix a typo in the Pubnative interstitial skip offset key that should be set in the publishers’ info.plist.
Renamed from
AATKitPubnativeOffsetSecsVideoLInterstitial
toAATKitPubnativeOffsetSecsVideoInterstitial
AATKit will keep supporting the old key:
AATKitPubnativeOffsetSecsVideoLInterstitial
.
Fix an issue with the sticky banner placement internal reloading logic.
Automatically react to changed IAB consent if VendorConsent is used.
Persist debug log choice after the shake debug screen.
3.0
3.0.16
2022-12-09
The swift package manager of this version could be found here.
Fixes
Fix an issue with Teads banners.
Fix an internal issue with consent handling for some ad networks.
Fix and improve the SDK logs.
3.0.15
2022-11-21
The swift package manager of this version could be found here.
Fixes
Fix an issue with InMobi banners.
3.0.14
2022-11-17
The swift package manager of this version could be found here.
Fixes
Fix an issue with statistics reporting.
3.0.13
2022-11-10
The swift package manager of this version could be found here.
Fixes
Fix an issue with DFP adaptive and inline banners.
3.0.12
2022-11-08
The swift package manager of this version could be found here.
Fixes
fix an issue with statistics reporting.
fix an issue with AppOpen placements reporting.
Improve AdMob driver logs.
3.0.11
2022-10-28
The swift package manager of this version could be found here.
Fixes
fix an issue with session reporting.
fix an internal issue with consent handling.
fix an issue with Criteo banners bids.
fix an issue with impressions handling in the sticky banners, multi-size banners and native Ads.
fix an issue with infeed banners with multiple sizes rules.
3.0.10
2022-10-25
The swift package manager of this version could be found here.
Fixes
Fix an issue that occurs when using the
alternativeBundleID
.
3.0.9
2022-10-11
The swift package manager of this version could be found here.
Fixes
Fix an internal issue with rules validation.
3.0.8
2022-10-10
The swift package manager of this version could be found here.
Fixes
Fix an issue with native ads impressions tracking.
3.0.7
2022-10-06
The swift package manager of this version could be found here.
Fixes
Fix an issue with banner viewable impressions tracking.
3.0.6
2022-10-05
The swift package manager of this version could be found here.
Changes
Implement SmartAd In-App Bidding.
3.0.5
2022-10-04
The swift package manager of this version could be found here.
Fixes
Fix an issue where
AATBannerCacheConfiguration
init method was not exposed to Objective-C.
3.0.4
2022-09-29
The swift package manager of this version could be found here.
Fixes
Fix an issue in
AATStickyBannerPlacement
auto-reloading.Fix an issue in logging where large logs were being trimmed.
3.0.3
2022-09-21
The swift package manager of this version could be found here.
Fixes
Fix a crash that happens when AATKit logs contain a URL.
3.0.2
2022-09-19
The swift package manager of this version could be found here.
Changes
Change the public API that sets the currently active view controller:
From:
API:
public static func controllerViewWillAppear(controller: UIViewController)
Usage:
AATSDK.controllerViewWillAppear(controller: self)
To:
API:
public static func controllerViewDidAppear(controller: UIViewController)
Usage:
3.0.1
2022-09-13
The swift package manager of this version could be found here.
Changes
Improve the SDK logs to work with the Console app.
3.0.0
2022-09-07
The swift package manager of this version could be found here.
AATKit 3 comes with the following improvements:
New object-oriented APIs for all placement types.
Each placement now uses a separate delegate (as opposed to the general delegate used by AATKit 2), informing about placement events like ad load, pause for ad etc.
Report new KPI mediationCylces.
Report new dimension consent type.
Report new dimension consent value.
Request rules with consent value.
Add a new API for passing PublisherProvidedId to Ad Networks that support it (DFP and DFPDirect):
setPublisherProvidedId(_ publisherProvidedId: String)
.
Some method names have changed for improved consistency across platforms.
The name of the public interface has been changed from
AATKit
toAATSDK
.AATKit 3 is M1 compatible, hence ad networks not supporting M1 are removed until they support M1:
ironSource.
Enable Ad Networks SDKs debug logs by server config.
Merging server-side keywords with the SDK global keywords.
Calling ‘controllerViewWillAppear(:)’ and ‘controllerViewWillDisappear()’ can now be called on AATSDK directly.
Library Updates
Xandr (APPNEXUS) SDK to 8.0.0 - as this update requires a new identifier for initialising the Xandr network SDK, please make sure to have network keys updated with the
memberId
in theextraInfo
field.
To migrate from AATKit 2, please refer to our AATKit 3 Migration Guide.
Last updated