前言
我们支持iOS 9.0系统及以上版本,如果您使用的Xcode版本低于9.3,我们建议归档时禁用"bitcode"。
重要信息:在OpenMediation SDK中,针对第三方平台的adapter模块被单独打包成独立的framework文件,每个平台都有一个对应的adapter包。如果您使用了OpenMediation SDK的聚合功能,务必把adapter下载并集成到项目中。更多信息请参考添加中介网络。
概述
本指南介绍了OpenMediation SDK在iOS应用中的集成。
OpenMediation提供多样化和有效的货币化服务,支持多种广告格式,包括原生广告、插屏广告、横幅广告和激励视频广告。OpenMediation平台协调AdTiming、AdMob、Facebook、UnityAds、Vungle、Tapjoy、AppLovin、AdColony、Chartboost、TikTok、Mintegral、GDT和IronSource。
对聚合感兴趣吗?整合我们的横幅广告,原生广告,插屏广告和激励视频广告在您的应用程序,并遵循我们的添加广告平台和平台集成介绍。
步骤1. 将SDK添加到您的项目中
OpenMediation支持CocoaPods和手动下载SDK两种方式:
CocoaPods
CocoaPods是Objective-C和Swift的依赖管理器;它自动化并简化了SDK集成过程。有关开始和使用CocoaPods的更多信息,请参阅CocoaPods指南。
使用CocoaPods集成我们的SDK,您需要在项目podfile中输入以下代码:
pod 'OpenMediation','2.5.0'
克隆Git存储库
您可以克隆如下Git仓库:
git clone git://github.com/AdTiming/OpenMediation-iOS.git
Swift Package Manager
我们从OpenMediation V2.0.5开始支持Swift Package Manager管理器。
1. 在Xcode中,点击File > Swift Packages > Add Package Dependency。
2. 在出现的对话框中,输入存储库URL: https://github.com/AdTiming/OpenMediation-iOS.git。
3. 在版本中,选择"Up to Next Major"和默认选项。
4. 选择要在项目中使用的库。
手动下载SDK
您可以通过GitHub仓库来获取OpenMediation SDK源码和演示应用:
步骤2. Build Settings
1. Add Linker Flags
- 在Build Settings中添加配置:
Target ➣ Build Settings ➣ Linking ➣ Other Linker Flags:
–ObjC
2. App Transport Security Settings
-
添加一个名为 'App Transport Security Settings' 的字典,确保将次字典添加到 'Top Level Key'上。
-
在此字典中,添加一个名为 'Allow Arbitrary Loads' 的布尔值 , 并将其 设置为YES。
步骤 3. OpenMediation SDK初始化
@import OpenMediaton
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
[OpenMediation initWithAppKey:@"YOUR_OPENMEDIATION_APP_KEY"];
}
import OpenMediation
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions:[UIApplication.LaunchOptionsKey: Any]?) -> Bool {
OpenMediation.initWithAppKey("YOUR_OPENMEDIATION_APP_KEY")
}
使用AdUnits初始化OpenMediation SDK
您可以指定一个或多个广告类型进行初始化,我们建议您采用这种方法,因为它只会提取您在adUnits参数中定义的特定广告单元。 adUnits参数是一个字符串数组。 如果您使用的方法没有adType参数(第3步),则SDK会预先加载Interstitial和RewardedVideo。
1. 预加载多种广告类型
[OpenMediation initWithAppKey:@"YOUR_OPENMEDIATION_APP_KEY" adFormat:(OpenMediationAdFormatInterstitiall|OpenMediationAdFormatRewarded)];
OpenMediation.initWithAppKey("YOUR_OPENMEDIATION_APP_KEY", adFormat:OpenMediationAdFormat(rawValue: OpenMediationAdFormat.interstitial.rawValue | OpenMediationAdFormat.rewardedVideo.rawValue)!)
2. 预加载一种广告类型
[OpenMediation initWithAppKey:@"YOUR_OPENMEDIATION_APP_KEY" adFormat:OpenMediationAdFormatInterstitial;
OpenMediation.initWithAppKey("YOUR_OPENMEDIATION_APP_KEY", adFormat:OpenMediationAdFormat.interstitial)
传递归因信息 (可选)
如果您项目同时集成了AppsFlyer SDK,我们需要您将应用归因数据传递到OpenMediation,以便我们帮您准确计算各Media Source、Campaign层级ROAS及LTV数据。
1. 在AppsFlyer onConversionDataSuccess 回调中调用 sendAFConversionData
AppsFlyer 5.0.0以上版本
- (void)onConversionDataSuccess:(NSDictionary *)conversionInfo {
/// Send AppsFlyer conversion data
[OpenMediation sendAFConversionData:conversionInfo];
}
func onConversionDataSuccess(_conversionInfo: NSDictionary) {
/// Send AppsFlyer conversion data
OpenMediation.sendAdConversionData(conversionInfo)
}
AppsFlyer 4.x 或更低版本
- (void)onConversionDataReceived:(NSDictionary *)installData {
/// Send AppsFlyer conversion data
[OpenMediation sendAFConversionData:installData];
}
func onConversionDataSuccess(_installData: NSDictionary) {
/// Send AppsFlyer conversion data
OpenMediation.sendAFConversionData(installData)
}
2. 在AppsFlyer onAppOpenAttribution 回调中调用 sendAFDeepLinkData
- (void)onAppOpenAttribution:(NSDictionary *)attributionData {
/// Send AppFlyer deep link attribution data
[OpenMediation sendAFDeepLinkData:attributionData];
}
func onConversionDataSuccess(_attributionDate: NSDictionary) {
/// Send AppsFlyer conversion data
OpenMediation.sendAFDeepLinkData(attributionData)
}
Step 4. 使用Test Suite套件测试集成
1. 集成安装
The aggregation function test suite needs to be installed using Cocoapods. Please add the following code to your Podfile:
pod 'OpenMediationTestSuite', '1.4.0'
2. 初始化功能测试套件
#import <OMTestSuite/OMTestSuite.h>
[OMTestSuite presentWithAppKey:@"YOUR_OPENMEDIATION_APP_KEY" onViewController:YOUR_CONTROLLER];
import OMTestSuite
OMTestSuite.present(withAppKey:"YOUR_OPENMEDIATION_APP_KEY", on:YOUR_CONTROLLER)
您可以通过测试套件工具章节获取更多帮助。
评论
文章评论已关闭。