广点通行为数据上报iOS SDK接入文档-V1.0.0

1. 下载SDK

登录DMP系统(MP广告主登录MP系统 -『人群管理』-『高级拓展』进入DMP),在“数据接入”页面创建App用户行为数据源。行为数据源的类型选择iOS,并填写相应的应用ID,输入数据源名称创建一个数据源。创建好数据源之后,您会看到DMP给您的App数据源分配了两个ID,一个是行为数据源ID(UserActionSetID),另一个是AppSecretKey。

然后点击获取SDK,下载iOS SDK的压缩包,压缩包中的GDTActionSDK-1.0.0.framework文件为您的App需要嵌入的SDK,压缩包中的GDTActionSDKSample是我们提供的SDK接入示例工程。注意,本文档提到的GDTActionSDK.framework指的是您实际下载的SDK版本。

2. 导入SDK

解压下载下来的SDK,可以看到GDTActionSDK.framework,Sample示例程序,接入文档。这里以Sample示例程序导入SDK为例:

  1. GDTActionSDK.frameworkMove到示例程序项目lib文件夹内。(在GDTActionSDKSample目录下运行“mv ../GDTActionSDK-1.0.*-simulator.framework GDTActionSDKSample/lib/GDTActionSDK.framework”)
  2. 在具体代码引入的地方将对应接口import进来。目前SDK最低支持系统版本号为iOS 7.0
#import <GDTActionSDK/GDTAction.h>

注:若在运行项目时出现framework image not found错误,可以在Build Phases -> copy Files中将Framework 添加到待拷贝文件中来解决。

3. SDK初始化

找到您的App的入口(AppDelegate.m)并导入头文件,并在didFinishLaunchingWithOptions方法中调用[GDTAction init] 方法,这样就完成了初始化SDK的工作。SDK初始化完成之后,可以在在applicationDidBecomeActive方法中调用logAction:StartApp上报应用启动行为。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    /*
     * 在接入广点通行为数据SDK时,请在App启动的时候调用初始化方法
     * 初始化方法调用时请传入数据源UserActionSetId和在后台看到的secretKey密钥串
     */
    [GDTAction init:@"yourActionSetId" secretKey:@"yourSecretKey"];

    return YES;
}

- (void)applicationDidBecomeActive:(UIApplication *)application {

    /*
     * 在应用启动的时候请上报GDTSDKActionNameStartApp行为
     * SDK内部会判断此次启动行为是否为激活行为并上报,开发者无需另外作判断逻辑
     */
    [GDTAction logAction:GDTSDKActionNameStartApp actionParam:@{@"value":@(123)}];
}

4. 上报行为数据

在App内发生转化行为时,可以调用下面的代码上报行为数据。

// 用户发生购物行为时,可以用[GDTAction logAction]上报用户的这次行为,并将价格(整型值,单位分)等行为参数一起带上
[GDTAction logAction:GDTSDKActionNameCompleteOrder actionParam:@{@"product_id":@(12345),@"value":@(12800)}];

关于行为类型名字(actionName)和行为参数(actionParam)的类型,在SDK的主要API介绍这一章节有详细说明。

5. SDK主要API

方法名 功能
+(void)init:(NSString )actionSetId secretKey:(NSString )secKey 初始化方法,必须在App的入口调用一次
@param actionSetId : 您在DMP数据接入获得的行为数据源ID
@param secretKey : 您在DMP数据接入获得的行为数据源SecretKey
+(void)logAction:(NSString )actionName actionParam:(NSDictionary )actionParam 行为上报接口,支持上报行为参数
@param actionName : 行为类型名,系统支持的actionName见下
@param actionParam : 行为参数,行为参数是"Key-Value"类型,Key只可以为String类型,只能包含字母、数字和下划线,必须以字母开头,长度不能超过255;Value可以是String/Number/Boolean/JSONArray其中一种,当Value为JSONArray时,它的元素只能为String/Number/Boolean中的一种,且所有元素必须是同一个类型

当前版本我们支持如下的标准行为类型,除了这些行为以外,如果您需要上报自定义行为,可以给logAction:(NSString *)actionName方法的actionName参数传入自定义的字符串。

常量名 含义
GDTSDKActionNameStartApp START_APP 应用启动
GDTSDKActionNamePageView PAGE_VIEW 页面浏览
GDTSDKActionNameRegister REGISTER 注册
GDTSDKActionNameViewContent VIEW_CONTENT 内容浏览
GDTSDKActionNameConsult CONSULT 咨询
GDTSDKActionNameAddToCart ADD_TO_CART 加入购物车
GDTSDKActionNamePurchase PURCHASE 购买
GDTSDKActionNameSearch SEARCH 搜索
GDTSDKActionNameAddToWishList ADD_TO_WISHLIST 加入收藏
GDTSDKActionNameInitiateCheckOut INITIATE_CHECKOUT 开始结算
GDTSDKActionNameCompleteOrder COMPLETE_ORDER 下单
GDTSDKActionNameDownloadApp DOWNLOAD_APP 下载应用
GDTSDKActionNameRate RATE 评分
GDTSDKActionNameReservation RESERVATION 预订
GDTSDKActionNameShare SHARE 分享
GDTSDKActionNameApply APPLY 申请(用于金融广告主的申请贷款、开卡等)
GDTSDKActionNameClaimOffer CLAIM_OFFER 领取卡券
GDTSDKActionNameNavigate NAVIGATE 导航
GDTSDKActionNameProductRecommend PRODUCT_RECOMMEND 商品推荐

6. 备注

压缩包中GDTActionSDK.framework包含两个文件,分别为适配模拟器架构的Framework和真机架构的Framework,在提交AppStore时请勿使用模拟器架构的Framework。使用方请酌情使用。