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 by AATImpressionDelegate has been updated as follows:

    • The mediationType, price, currencyCode, and precision fields have been removed.

    • A new field, priceInfo of type AATPriceInfo, has been added. This field includes the following information:

      • price, currency and precision type

Improvements

  • The AATAdMobDSPAdapter has been renamed to AATGooglePartnerBidding.:

    • 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 of AATManagedConsent.

    • 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 from AATAdNetworksOptions.

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 use AATConfiguration.initialRules instead.

  • Remove the deprecated method setRuleCachingEnabled(:). Please use AATConfiguration.shouldCacheRules instead.

  • Deprecate AATPubNativeOptions for setting the Pubnative offset options. They will no longer be supported by HyBid SDK v3.0.

Improvements

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 with UITableView.

    • 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) use AATSDK.createBannerCache(configuration: configuration).

  • Deprecate AATSDK.setInitialRules(:). Please use AATConfiguration.initialRules instead.

  • Deprecate AATSDK.setRuleCachingEnabled(:). Please use AATConfiguration.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 the editConsent 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?) and setLogLevel(:) 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 to func aatPauseForAd(placement: AATPlacement).

  • Placements will pass themselves to AATStatisticsDelegate listener methods as a parameter called placement of type AATPlacement. 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 called placement of type AATPlacement. 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 object

    • Add currencyCode and precision properties to the AATImpression 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 same func didCountImpression(placement: AATPlacement?, _ impression: AATImpression) callback.

    • Currently, only Google Mobile Ads supports impression-level revenue data.

  • Introduce new banner placement type: AATAutoLoadBannerPlacement and AATAutoLoadMultiSizeBannerPlacement which are based on AATBannerCache. They are intended to replace both AATStickyBannerPlacement and AATMultiSizeBannerPlacement 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 type AATPlacement 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 to AATKitPubnativeOffsetSecsVideoInterstitial

    • 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 to AATSDK.

  • 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 the extraInfo field.

To migrate from AATKit 2, please refer to our AATKit 3 Migration Guide.

Last updated