Third-party Ad Network SDK Integration
AdMarvel supports the following ad networks on the client-side:
Ad network | Version | Supported ad types | |||
---|---|---|---|---|---|
Banner | Interstitial | Native | Rewarded | ||
AdColony | 2.6.1.1 | Yes | Yes | Yes | Yes |
Amazon | 2.2.13 | Yes | Yes | No | No |
Chartboost | 6.3.0 | No | Yes | Yes | Yes |
4.9.1 | Yes | Yes | Yes | No | |
InMobi | 5.1.2 | Yes | Yes | Yes | Yes |
Google/AdMob SDK | 7.6.0 | Yes | Yes | Yes | No |
Heyzap | 9.3.7 | No | Yes | Yes | No |
Millennial | 6.1.0 | Yes | Yes | Yes | No |
Vungle | 3.2.0 | No | Yes | No | Yes |
Verve | 2.5.0 | Yes | Yes | No | No |
Unity Ads | 1.5.6 | No | Yes | No | Yes |
YuMe | 17.4.0.18 | No | Yes | No | No |
The Opera Mediaworks SDK is designed to be used universally on iPhone and iPad apps.
- See Adding an SDK for more information about adding frameworks.
- See Integrating Opera Mediaworks SDK for more information about integrating the Opera Mediaworks SDK.
- See Preparing your apps for iOS 9 for recommendations for iOS 9.
Integrating with AdColony
Add the following frameworks in your application project:
- libz.1.2.5.dylib
- AdSupport (Weak linked if deployment target is less than 7.0)
- AudioToolbox
- AVFoundation
- CoreGraphics
- CoreMedia
- CoreTelephony
- EventKit
- EventKitUI
- MediaPlayer
- MessageUI
- QuartzCore
- Social (Weak linked if deployment target is less than 7.0)
- StoreKit (Weak linked if deployment target is less than 7.0)
- SystemConfiguration
- WebKit (Weak linked if deployment target is less than 8.0)
- The base deployment target supported by AdColony is 6.0.
- AdColony SDK requires “-ObjC” and “-fobjc-arc” to be set as part of your Other Linker Flags in your project.
- If you compile your app with iOS SDK 9.0, you must disable App Transport Security (ATS). See here for instructions on disabling ATS.
- To ensure your iOS app continues to work with ads served by the AdColony mobile ad network, you must whitelist AdColony Apps. See here for instructions on whitelisting apps.
You can initialize the AdColony SDK by providing the AdColony credentials in the info.plist
file of your application. Add the following keys to your info.plist
file:
Key Name
|
Description
|
Sample Value
|
Required
|
---|---|---|---|
ADMARVEL_ADCOLONY_APP_ID |
App ID provided by AdColony. | 121hddju1234 | Yes |
ADMARVEL_ADCOLONY_AD_ZONES |
Zones provided by AdColony. Multiple zones must be comma-separated values without any spaces. | 12345,12346,12347 | Yes |
ADMARVEL_ADCOLONY_LOGGING |
Set to YES to turn on debug logs for AdColony and NO to turn off the debug logs. | YES, NO | No |
ADMARVEL_ADCOLONY_CUSTOM_ID |
Custom ID for AdColony. | No | |
You must pass all the values as strings. |
Integrating with Amazon
Add the following frameworks in your application project:
- AdSupport
- CoreGraphics
- CoreLocation
- CoreTelephony
- Foundation
- UIKit
- SystemConfiguration
- CoreTelephony
- MediaPlayer
- The base deployment target supported by Amazon is 6.0.
- While building with Xcode 7.0, publishers might get the warning:
AmazonMobileAdsSDK-Prefix.pch.pch: No such file or directory
. - Amazon ad network does not support App Thinning. You must set
enablebitcode
to “NO” in your project’s build settings. - If you compile your app with iOS SDK 9.0, you must disable App Transport Security. See here for instructions on disabling ATS.
Integrating with Chartboost
Add the following frameworks in your application project:
- StoreKit
- Foundation
- CoreGraphics
- UIKit
- The base deployment target supported by Chartboost is 6.0.
- While building with Xcode 7.0, publishers might get the warning:
Chartboost-Prefix.pch.pch: No object file for requested architecture
. - The Chartboost SDK is compatible with iOS version 6.0 or higher and devices iPhone 3GS or higher, iPod 3rd generation or higher, and all iPads.
- Chartboost ad network does not support App Thinning. You must set
enablebitcode
to “NO” in your project’s build settings.
Integrating with Facebook
Add the following frameworks in your application project:
- AdSupport
- CoreGraphics
- CoreMotion
- CoreImage
- Foundation
- StoreKit
- UIKit
- SystemConfiguration
- The base deployment target supported by Facebook is 7.0.
- While building with Xcode 7.0 and setting application deployment target less than 7.0, publishers might get the warning:
object file (FBANBannerAdAdapter.o) was built for newer iOS version (7.0) than being linked (6.0)
.
Disabling ATS
If you compile your app with iOS SDK 9.0, you must disable App Transport Security. Currently, you will need to whitelist the Facebook domains in your app by adding the following to your application’s plist:
Whitelisting Facebook Apps
To ensure your iOS app continues to work with ads served by the Facebook mobile ad network, add the following properties to your app’s Info.plist
file:
Integrating with GoogleAdMob
Add the following frameworks in your application project:
- AdSupport
- AudioToolbox
- CoreGraphics
- CoreMedia
- EventKit
- EventKitUI
- MessageUI
- StoreKit
- SystemConfiguration
- The base deployment target supported by GoogleAdMob is 6.0.
- Google/AdMob SDK no longer works with the
-all_load
Other Linker Flag. If you have third party libraries that require the-all load
flag try removing them from your project, removing the-all_load
flag, and then adding the Other Linker Flag-force_load PATH/TO/LIB/<library filename>
. - GoogleAdMob ad network does not support App Thinning. You must set
enablebitcode
to “NO” in your project’s build settings. - If you compile your app with iOS SDK 9.0, you must disable App Transport Security. See here for instructions on disabling ATS.
Integrating with Heyzap
Add the following frameworks to your application project:
- AdSupport
- CoreGraphics
- CoreTelephony
- EventKit
- EventKitUI
- MediaPlayer
- MobileCoreServices
- QuartzCore
- Security
- StoreKit
- iAd
- libsqlite3.dylib
- libxml2.dylib
Heyzap ad network does not support App Thinning. You must set enablebitcode
to “NO” in your project’s build settings.
Integrating with InMobi
Add the following frameworks to your application project:
- AdSupport
- AudioToolbox
- AVFoundation
- CoreLocation
- CoreTelephony
- EventKit
- EventKitUI
- MediaPlayer
- MessageUI
- Security
- Social
- UIKit (Weak linked if deployment target is less than 7.0)
- StoreKit
- SystemConfiguration
- libsqlite3.0.dylib
- libz.dylib
- The base deployment target supported by InMobi is 7.0.
- While building with Xcode 7.0 and setting application deployment target less than 8.1, publishers might get the warning:
object file (IMPing.o) was built for newer iOS version (8.1) than being linked (6.0)
. - InMobi ad network does not support App Thinning. You must set
enablebitcode
to “NO” in your project’s build settings. - If you compile your app with iOS SDK 9.0, you must disable App Transport Security. See here for instructions on disabling ATS.
Integrating with Millennial
Add the following frameworks to your application project:
- AdSupport
- AudioToolbox
- AVFoundation
- CoreGraphics
- CoreLocation
- Foundation
- MediaPlayer
- MobileCoreServices
- QuartzCore
- Social
- StoreKit
- SystemConfiguration
- UIKit
- libxml2.dylib
- The base deployment target supported by Millennial is 7.0.
- While building with Xcode 7.0 and setting application deployment target less than 7.0, publishers might get the warning:
object file (MMVASTMediaFile.o) was built for newer iOS version (7.0) than being linked (6.0).
- Millennial ad network does not support App Thinning. You must set
enable bitcode
to “NO” in your project’s build settings. - Millennial SDK requires
-ObjC
to be set as part of your Other Linker Flags in your project. - If you compile your app with iOS SDK 9.0, you must disable App Transport Security. See here for instructions on disabling ATS.
Integrating with Vungle
Add the following frameworks to your application project:
- AdSupport
- AudioToolbox
- AVFoundation
- CFNetwork
- CoreGraphics
- CoreMedia
- Foundation
- libz.dylib
- libsqlite3.dylib
- MediaPlayer
- QuartzCore
- StoreKit
- SystemConfiguration
- UIKit
- WebKit (Weak linked if deployment target is less than 8.0)
- The base deployment target supported by Vungle is 7.0.
- You must add
-ObjC
to Other Linker flags of your project’s build settings. - Vungle ad network does not support App Thinning. You must set
enablebitcode
to “NO” in your project’s build settings. - For Vungle to work properly, publishers must add
VungleResource.Bundle
file in the application’s resource directory.VungleResource.Bundle
file is packaged insideAdMarvelSDK.zip
.
Integrating with Verve
Add the following frameworks to your application project:
- AdSupport
- CoreLocation
- CoreGraphics
- Foundation
- iAd
- UIKit
- EventKit
- Security
- PassKit
- MediaPlayer
- MessageUI
- Social
- libxml2.dylib
- The base deployment target supported by Verve is 7.0.
- You must add
-ObjC
and-all_load
to Other Linker flags of your project’s build settings. - Verve ad network does not support App Thinning. You must set
enablebitcode
to “NO” in your project’s build settings.
Integrating with UnityAds
Add the following frameworks to your application project:
- StoreKit
- AdSupport
- The base deployment target supported by UnityAds is 6.0.
- While building with Xcode 7.0 and setting application deployment target less than 6.1, publishers might get the warning:
object file (UnityAds) was built for newer iOS version (6.1) than being linked (6.0)
. - UnityAds ad network does not support App Thinning. You must set
enablebitcode
to “NO” in your project’s build settings. - For UnityAds to work properly, publishers must add
UnityResource.Bundle
file in the application’s resource directory.UnityResource.Bundle
file is packaged insideAdMarvelSDK.zip
.
You can initialize the UnityAds SDK by providing the UnityAds credentials in the info.plist
file of your application. Add the following keys to your info.plist
file:
Key Name
|
Description
|
Sample Value
|
Required
|
---|---|---|---|
ADMARVEL_UNITY_GAME_ID |
Game ID provided by UnityAds. | 121hddju1234 |
Yes |
ADMARVEL_UNITY_TEST |
Set to YES to turn on the test mode and NO to turn off the test mode. | YES, NO |
No |
ADMARVEL_UNITY_TEST_DEVELOPER_ID |
Set the developer ID, if any. Applicable for only test mode. | 1234rfgf |
No |
ADMARVEL_UNITY_TEST_OPTIONS_ID |
Set the options ID, if any. Applicable for only test mode. | 6454rtusd |
No |
ADMARVEL_UNITY_DEBUG_MODE |
Set to YES to turn on debug logs for UnityAds and NO to turn off the debug logs. | YES, NO |
No |
You must pass all the values as strings. |
Integrating with YuMe
Add the following frameworks to your application project:
- EventKitUI
- UIKit
- SystemConfiguration
- EventKit
- MobileCoreServices
- Foundation
- CoreGraphics
- The base deployment target supported by YuMe is 7.0.
- While building with Xcode 7.0, publishers might get the warning:
/var/folders/3q/s140pfys2511qczgs3fv4g580000gr/C/org.llvm.clang.yume/ModuleCache/2O17EPEGSEGEG/Foundation-29B9L6YRR52B.pcm:
No such file or directory. - The EventKitUI and EventKit frameworks are optional.
- The YuMe SDK is compatible with iOS 7.0 or higher and requires
-ObjC
to be set as part of your Other Linker Flags in your project. - YuMe ad network does not support App Thinning. You must set
enablebitcode
to “NO” in your project’s build settings.