开发文档:https://developers.e.qq.com/docs/user_data/actions/apply/conversion_app
DMP:de.qq.com
数据接入
您可以上报发生在您App或网站中的用户行为,这些行为数据会被存储在您专属的第一方数据仓库中,成为您在腾讯数据资产的一部分。随着这些行为数据的累积,您可以基于这些行为数据灵活地进行人群提取,并在腾讯大盘中寻找相似用户。您可以对这些人群进行洞察分析、或者将它们实时关联广告进行投放。您还可以创建转化,利用这些行为数据统计广告的转化指标。 您的行为数据还可以用于您的动态创意广告投放。
行为数据主要由以下几个部分组成
用户标识
行为类型
行为发生的时间
行为参数
您可以上报一些常见的标准行为,例如“注册”,“付费”等,也可以上报任意您需要的自定义行为。您也可以为行为带上任意的参数,诸如“价格”,“类目”等信息。您可以根据您的需要进行参数的上报,这些参数可以被用于更细化的人群创建。
APP行为数据接入
SDK接入
IOS :http://192.168.0.12/imgcache.qq.com/qzone/biz/gdt/dmp/user-action/GDT_ActionSDK_iOS.zip
Android:http://192.168.0.12/imgcache.qq.com/qzone/biz/gdt/dmp/user-action/GDT_ActionSDK_Android.zip
创建App用户行为数据源
SDK 接入方案需要先创建 APP用户行为数据源,用户行为数据源是 APP用户行为数据的容器,针对 一个APP,只需要创建一次即可(Android 和iOS需要分开创建)。然后再通过 SDK将用户行为数据 上报到用户行为数据源中。
在DMP 系统(de.qq.com)的“数据接入”模块里创建APP 用户行为数据源。登录DMP系统(MP广告主登录MP系统 -『人群管理』-『高级拓展』进入DMP),在“数据接入”页面创建App用户行为数据源。
创建好数据源之后,您会看到DMP给您的App数据源分配了两个ID,一个是行为数据源ID(UserActionSetID),另一个是AppSecretKey。调用GDTAction.init的时候会用到这两个ID。
接口Android篇
Application类,在onCreate()方法中调用初始化接口
package com.qq.gdt.action.demo;
import android.app.Application;
import com.qq.gdt.action.GDTAction;
public class GDTActionApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
// ...
GDTAction.init(this, "yourUserActionSetID", "yourAppSecretKey"); // 第一个参数是Context上下文,第二个参数是您在DMP上获得的行为数据源ID,第三个参数是您在DMP上获得AppSecretKey
}
}
每一个Activity的onResume方法中都调用上报App启动接口
GDTAction.logAction(ActionType.START_APP); // 传入的actionType参数必须是ActionType.START_APP
在App内发生转化行为时,可以调用下面的代码上报行为数据
// 用户发生购物行为时,可以用GDTAction.logAction上报用户的这次行为,并将价格等行为参数一起带上
JSONObject actionParam = new JSONObject();
actionParam.put("value", 6800);
actionParam.put("name", "Pixel 2 XL");
GDTAction.logAction(ActionType.PURCHASE, actionParam);
ActionType标准行为类型
常量名 | 值 | 含义 |
---|---|---|
START_APP | START_APP | 应用启动 |
PAGE_VIEW | PAGE_VIEW | 页面浏览 |
REGISTER | REGISTER | 注册 |
VIEW_CONTENT | VIEW_CONTENT | 内容浏览 |
CONSULT | CONSULT | 咨询 |
ADD_TO_CART | ADD_TO_CART | 加入购物车 |
PURCHASE | PURCHASE | 付费购买 |
SEARCH | SEARCH | 搜索 |
ADD_TO_WISHLIST | ADD_TO_WISHLIST | 加入收藏 |
INITIATE_CHECKOUT | INITIATE_CHECKOUT | 开始结算 |
COMPLETE_ORDER | COMPLETE_ORDER | 下单 |
DOWNLOAD_APP | DOWNLOAD_APP | 下载应用 |
RATE | RATE | 评分 |
RESERVATION | RESERVATION | 预订 |
SHARE | SHARE | 分享 |
APPLY | APPLY | 申请,用于金融广告主的申请贷款、开卡等 |
CLAIM_OFFER | CLAIM_OFFER | 领取卡券,用于web落地页领取卡券等优惠信息的行为 |
NAVIGATE | NAVIGATE | 导航,用于web落地页点击跳转到地图的行为 |
PRODUCT_RECOMMEND | PRODUCT_RECOMMEND | 商品推荐,动态创意客户直接传算好的推荐结果时使用 |
如果您需要上报自定义行为,可以直接给logAction(String actionType)方法的actionType参数传入一个字符串即可
接口iOS篇
导入GDTActionSDK-1.0.0.framework
然后App的入口AppDelegate.m中
#import <GDTActionSDK/GDTAction.h>
- (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)}];
}
在App内发生转化行为时,可以调用下面的代码上报行为数据
+(void)logAction:(NSString )actionName actionParam:(NSDictionary )actionParam
例
// 用户发生购物行为时,可以用[GDTAction logAction]上报用户的这次行为,并将价格(整型值,单位分)等行为参数一起带上
[GDTAction logAction:GDTSDKActionNameCompleteOrder actionParam:@{@"product_id":@(12345),@"value":@(12800)}];
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 | 商品推荐 |
行为上报自定义去重
Android篇
对于需要做自定义去重的广告主,可以在调用logAction(actionType, actionParams)上报行为时,在actionParams中传入key为outer_action_id的参数,具体代码如下
JSONObject actionParam = new JSONObject();
actionParam.put(ActionParam.Key.OUTER_ACTION_ID, "yourOuterActionId"); // 传入outer_action_id
GDTAction.logAction(ActionType.COMPLETE_ORDER, actionParam); // 此处以上报下单这个行为为例
SDK内部会自动处理outer_action_id这个参数并将它从actionParams中移除,广告主也不会在DMP-Web页面上的行为参数中看到这个outer_action_id这个参数
iOS篇
广告主在上报时需要做自定义去重时可以在ActionParam中设置GDTSDKActionParamKeyOuterActionId的Key,value为任意自定义如订单号的字符串作为自定义去重id,系统会根据该id进行去重。
行为上报指定用户次日留存
Android篇
对于需要指定上报用户次日留存指标的广告主,可以在调用logAction(ActionType.START_APP, actionParams)时,在actionParams中传入key为length_of_stay的参数,取值为1。具体代码如下:
JSONObject actionParam = new JSONObject();
actionParam.put(ActionParam.Key.LENGTH_OF_STAY, 1); // 传入值为1的length_of_stay参数
GDTAction.logAction(ActionType.START_APP, actionParam); // 上报START_APP行为时带上该参数
上报此参数后,系统会指定该次上报为留存数据。
iOS篇
当用户需要指定上报用户次日留存指标时,可以在上报StartApp时,加上length_of_stay的参数,值为1,系统会指定该次上报为留存数据。