数字广告测量及验证统一SDK(iOS)

数字广告测量及验证统一SDK(iOS)

数字广告测量及验证统一SDK(iOS)

 

# 数字广告测量及验证统一SDK (iOS) 部署指南

### 步骤1:添加iOS SDK 到工程中
1. [点此下载](http://event.mmachina.cn/download/1401.html) (下载内容为:测量及验证统一SDK (iOS) 安装包)iOS SDK (如需浏览此开源项目和 demo 工程请到 https://gitee.com/MMAChinaSDK 注册账号)
2. 将SDK发布文件中,release目录下的**MobileTracking.h** 、**libMobileTracking.a**、**sdkconfig.xml** 三个文件拷贝到项目工程中,将 **sdkconfig.xml** 上传到 web 服务器,使其可以通过 web 方式访问,假设其地址为 **http://xxxxxx.com/sdkconfig.xml**(其后会用到)。
3. 在项目工程 App 的 Target Build Settings 中的 **Other Linker Flags** 选项里添加 **-lxml2** **-all_load** 或 **-lxml2** **-force_load** 静态库的绝对路径
4. 添加SDK需要的Framework
   在需要添加SDK的项目的 Xcode 开发环境中选择 TARGETS–>Build Phases–>Link Binary With Libraries–> + 添加以下framework框架:
“`
    CoreLocation.framework
    libxml2.2.tbd
AdSupport.framework
CoreTelephony.framework
  SystemConfiguration.framework
“`
### 步骤2:使用方法
在使用的文件中引用
**#import “MobileTracking.h”**.
使用说明:
#### 1、初始化方法
在进行测量之前,必须进行初始化,通过以上的代码进行初始化操作
“`
[MobileTracking sharedInstance]
“`
#### 2、配置远程配置文件地址方法
SDK 会自动下载远程的配置文件,使用最新的配置文件进行参数的组装。
“`
[[MobileTracking sharedInstance] configFromUrl:@“http://xxxxxx.com/sdkconfig.xml”];
“`
#### 3、曝光的测量
通过调用以下的代码进行曝光的测量,
– view:参数为第三方公司的测量地址
– ad:参数为当前广告视图对象(**可视化广告测量为必传字段,普通广告测量默认缺省。**)
– videoPlayType:参数为当前视频广告的播放类型(**视频可视化广告测量为可选字段,1-自动播放,2-手动播放,0-无法识别。**)
– impressionType:参数为曝光的类型。(**普通广告测量的类型为必选字段,0-Tracked ads,1-曝光**)
3.1 曝光测量
“`
// impressionType=1 表示这是曝光测量。此时如果传0,表示这是Tracked ads测量
[[MobileTracking sharedInstance] view:@”http://example.com/xxxxxx” ad:adView impressionType:1];
“`
  备注:SDK曝光测量接口现已升级为曝光/Track Ads接口, 支持曝光或Tracked Ads测量。
    1、曝光的定义:只有广告物料已经加载在客户端并至少已经开始渲染(Begin to render,简称BtR)时,才应称之为“曝光”事件。“渲染”指的是绘制物料的过程,或者指将物料添加到文档对象模型的过程。
    2、Tracked Ads的定义:当测量代码已经下载到客户端时(即便广告不一定渲染),称该事件为“Tracked Ads”事件。
    开发者应根据广告实际展示情况,选择调用曝光或Tracked Ads测量,详细调用过程如上面的示例。如果进行曝光调用,则SDK会查验传入的广告View对象是否已开始渲染,如果是,则SDK会向测量方发出曝光上报;如果不是,则SDK会向测量方发出Tracked Ads上报。如果进行Tracked Ads调用,则SDK会直接向测量方发出Tracked Ads上报。
3.2 可见性广告测量
“`
[[MobileTracking sharedInstance] view:@”http://example.com/xxxxxx” ad:adview];
“`
   备注:对广告进行可见性测量时,广告必须是满足开始渲染(Begin to render,简称BtR)条件的合法曝光,否则SDK不会执行可见测量。在调用可见曝光测量接口时,SDK会查验传入的广告View对象是否已开始渲染,如果是,则SDK会向测量方发出曝光上报,并继续进行可见测量,直到满足可见/不可见条件,再结束可见测量流程;如果不是,则SDK会向测量方发出Tracked Ads上报,并结束可见测量流程。
3.3 视频可见性广告测量
“`
[[MobileTracking sharedInstance] viewVideo:@”http://example.com/xxxxxx” ad:adview videoPlayType:type];
“`
3.4 可见性广告JS测量
“`
[[MobileTracking sharedInstance] jsView:@”http://example.com/xxxxxx” ad:adview];
“`
3.5 视频可见性广告JS测量
“`
[[MobileTracking sharedInstance] jsViewVideo:@”http://example.com/xxxxxx” ad:adview];
“`
3.6 可见性广告测量停止,广告播放结束时调用
“`
[[MobileTracking sharedInstance] stop:@”http://example.com/xxxxxx”];
“`
#### 4、点击测量
通过调用以下的代码进行点击的测量,参数为第三方公司的测量地址
“`
[[MobileTracking sharedInstance] click:@”http://example.com/xxxxxx”];
“`
#### 5、进入后台时调用
主要用于保存当前测量数据,不被丢失。建议放在AppDelegate的applicationDidEnterBackground方法中
“`
[[MobileTracking sharedInstance] didEnterBackground];
“`
#### 6、回到前台时调用
重新读取缓存数据,主要用于保证当前测量数据,及时上报,建议放在AppDelegate的applicationWillEnterForeground方法中
“`
[[MobileTracking sharedInstance] didEnterForeground];
“`
#### 7、应用结束时调用
主要用于保存当前测量数据,不被丢失。
“`
[[MobileTracking sharedInstance] willTerminate];
“`
#### 7、开启调试日志
建议在测试时候打开
“`
[[MobileTracking sharedInstance] enableLog:YES];
“`
### 步骤3:验证和调试
SDK 的测试有两个方面:
1. 参数是否齐全,URL 拼接方式是否正确
2. 请求次数和第三方测量平台是否能对应上
请联系第三方测量平台完成测试