Wiki

Clone wiki

AATKit iOS / AATKit / AATKit_known_issues

Important Remarks

  1. Project Setup
  2. AATKit Initialisation
  3. Banner Integration
  4. Fullscreen Integration
  5. Rewarded Video
  6. APP Open Integration
  7. Native Ads Integration
  8. Native Ads Integration - special ad network characteristics
  9. Disable App Transport Security (ATS)
  10. Advanced Features
  11. Targeting
  12. Frequency Capping
  13. Important Remarks
  14. AATKit's Size within your app
  15. What is an AdSpace?
  16. Network-specific Information
  17. Statistics Delegate
  18. Reports Delegate
  19. Listen to impression level information
  20. AATKit AdMob custom events adapter (>= 2.77.x)

AATKit Changelogs


Remark 1: duplicated files.

The following files may appear as duplication within the Xcode project:

  • Mraid.js included in MoPub / MobFox / OpenX
  • MRAID.bundle included in MoPub / MobFox
  • MPCloseButtonX@3x.png included in MoPub / MobFox
  • MPCloseButtonX@2x.png included in MoPub / MobFox

Mraid.js / MRAID.bundle

Mraid is now used in various ad network SDKs. Due to this reason, each ad network bundle/framework/lib may come with its own Mraid.js file in order to work stand alone. Since the AddApptr mediation uses all ad network SDKs, the Xcode project file has to be configured accordingly. By adding the complete AATKit to your Xcode project, all bundled resources are added to your ‘Copy Bundle Resources’ tab in your Build Phases menu. Here all resources of your projects are listed, including the ones coming with the AATKit. As mentioned, some file, e.g. the Mraid.js files come with multiple ad network SDKs and thus, are added as duplications to the ‘Copy Bundle Resources’ tab. Since the publisher can decide for himself which ad networks are supposed to make it into the final app, it cannot be foreseen which of the duplicated files will become relevant. Hence, the publisher himself has to remove any duplicated file from the ‘Copy Bundle Resources’ list.

MPCloseButton

These files are close button images from the MoPub SDK. The reason why there is a duplication, is that the MobFox SDK comes bundled with the MoPub SDK and it's resources. Since the (some) MoPub SDK is already present, one may ask why there are no duplicated symbols warnings. This is because MobFox did add suffixes the MoPub classes, as can be seen here. However, this doesn't hold true for the mentioned close button images. Nevertheless, using the AATKit it's possible to add and remove the undesired SDKs by removing the SDK folder from your Xcode project. In order to provide compatibility in the scenario of removing either MoPub or MobFox, both versions remain present.

Solution

Remove duplicated Mraid and/or MPCloseButton file from your Copy Bundle Resources in the Build Phases tab of your Xcode project.

Screen Shot 2015-09-17 at 11.01.17.png

Remark 2: Bitcode

With iOS 9, Apple introduced a feature called Bitcode. In order to use Bitcode, each component of your app has to have Bitcode enabled.

AATKit has Bitcode enabled starting with version 2.64. However, not all of the third-party frameworks have enabled Bitcode. So you can either disable Bitcode in your whole project or remove the ad networks that don't support Bitcode.

Remove Networks without Bitcode

If you want to build with Bitcode, make sure you remove these networks from your project before building:

(Latest Update: 2017-03-22)

Remark 3: Inaccurate AATKit reporting

When using the key 'Application does not run in background' (UIApplicationExitsOnSuspend) in your info.plist and setting its value to YES, your application will terminate immediately if the user puts your app to the background. When going to the background, the iOS runtime calls the method:

  • (void)applicationDidEnterBackground:(UIApplication *)application

This callback is used by the AATKit to report various statistics about your application. So in case, your app terminates after the app has been sent to the background, we've experienced that the AATKit reporting is not able to finish on time. This seems to be dependent on the current performance of the mobile device at hand. Through this, your reporting can be negatively influenced in a significant way, if the info.plist entry 'Application does not run in background' is set to YES.

Screen Shot 2016-05-12 at 15.40.52.png

Remark 4: Update the MoPub SDK + impression counting of native ads in the MoPub SDK.

In order to increase accuracy in impression counting AddApptr hooks up to MoPub SDK having added a callback to the MoPub SDK source code. This code can be found here. This means in case you want to update the MoPub SDK on your own, you're required to incorporate the change within the MoPub SDK into your version of the MoPub SDK. Otherwise, impression counting for native ads will not be possible and the statistics in the AddApptr dashboard will differ from the impressions in the MoPub dashboard.

Solution

Set the 'Application does not run in background' to NO, or do not use it at all.

back (Header documentation)

next (Using the AATKit in Swift)

Updated