变现广告展示事件
App内变现广告展示时,报送该事件,用于进行广告展示及变现收入分析。
使用ROI分析功能、自定义分析变现指标时,为必须报送事件。
广告展示事件的 _event_name 为 _appImp
方法示例
public synchronized void trackAdImpression(SEAdImpEventModel seAdImpEventModel);
SEAdImpEventModel类参数说明:
(各聚合平台调用示例参见: 调用示例 )
参数名称 | 参数含义 | 参数类型 | 是否必传 |
adNetworkPlatform | 变现平台,前面为应传值,后面为平台名称, 例如:变现平台为快手时,只需要传入 kuaishou csj:穿山甲国内版 pangle:穿山甲国际版 tencent:腾讯优量汇 baidu:百度百青藤 kuaishou:快手 oppo:OPPO vivo:vivo mi:小米 huawei:华为 applovin:Applovin sigmob:Sigmob mintegral:Mintegral oneway:OneWay vungle:Vungle facebook:Facebook admob:AdMob unity:UnityAds is:IronSource adtiming:AdTiming klein:游可赢 fyber:Fyber(DT Exchange) chartboost:Chartboost adcolony:Adcolony inmobi:Inmobi bigo:BIGO |
String | 是 |
mediationPlatform |
聚合平台标识,常见聚合平台枚举如下,若您使用的聚合平台不在如下枚举值,您可以自定义命名,并控制字符数在32位。没有聚合平台标识,请设置为 "custom"。 max |
String | 是 |
adType | 展示广告的类型,枚举值如下: 例如:adType 为激励视频时,传入AdType.RewardVideo.intValue() 1:激励视频 2:开屏 3:插屏 4:全屏视频 5:Banner 6:信息流 7:短视频信息流 8:大横幅 9:视频贴片 10:中等尺寸横幅 0:其它 |
int | 是 |
adNetworkAppID | 变现平台的应用 ID | String | 否 |
adNetworkADID | 变现平台的变现广告位 ID | String | 是 |
ecpm | 广告 ecpm,单位:元(广告千次展现的变现收入,0或负值表示没传,单位为元) | float | 是 |
currencyType | 展示收益的货币种类,遵循《ISO 4217国际标准》,如 CNY、USD | String | 是 |
isRenderSuccess | 广告是否渲染成功,具体枚举值如下: 例如:成功时,只需要传入 true true:成功 false:失败 如果不需要统计该指标,请传 true |
boolean | 是 |
customProperties | 开发者传入的自定义属性 | JSONObject | 否 |
调用示例
import com.reyun.solar.engine.SolarEngineManager;
import org.json.JSONObject;
JSONObject customProperties = new JSONObject();
try {
//开发者自定义Json格式上报事件属性
customProperties.put("key1","value1");
customProperties.put("key2","value2");
......
} catch (JSONException e) {
///
}
SEAdImpEventModel seAdImpEventModel = new SEAdImpEventModel("Mintegral","xxx聚合平台名称xxx",AdType.RewardVideo.intValue(),"xxxAppIDxxx","xxx广告IDxxx",16.01,"CNY",true,customProperties);
SolarEngineManager.getInstance().trackAdImpression(seAdImpEventModel);
GroMore 聚合 SDK 对接示例:
为了方便 GroMore SDK 接入 SolarEngine SDK 更加方便,这里以 GMBannerAd 广告展示成功回调为例,其他类型广告参考 GMBannerAd广告方法即可,调用 SolarEngine SDK 的代码如下:
import com.reyun.solar.engine.SolarEngineManager;
public void onAdShow() {
//banner 广告回调得到的广告信息
GMAdEcpmInfo gmAdEcpmInfo;
//变现平台名称(以下两个方法获取的 PlatformName 的值那个不为空则传递)
String adNetworkPlatform = gmAdEcpmInfo.getAdNetworkPlatformName();
String adNetworkPlatform = gmAdEcpmInfo.getCustomAdNetworkPlatformName;
String medationPlatform = "gromore";
//填充广告的聚合平台名称
int adType = 5;
//广告类型,具体枚举参考上方参数相关介绍,此处 banner 枚举为 5
String adNetworkAppID = "";
//变现平台的应用 ID,如果没有传空字符串即可
String adNetworkADID = gmAdEcpmInfo.getAdNetworkRitId();
//变现平台的变现广告位 ID
float ecpm = gmAdEcpmInfo.getPreEcpm();
//广告ECPM(单位为元),Gromore如果回传的是分,需要/100
String currencyType = "CNY";
//货币类型,Gromore请与运营确认是'CNY'或者'USD'
boolean isRenderSuccess = true;
//广告是否渲染成功,true:成功、false:失败
JSONObject customProperties = new JSONObject();
try {
//开发者自定义Json格式上报事件属性
customProperties.put("key1","value1");
customProperties.put("key2","value2");
......
} catch (JSONException e) {
///
}
SEAdImpEventModel seAdImpEventModel = new SEAdImpEventModel(adNetworkPlatform, medationPlatform, adType, adNetworkAppID, adNetworkADID, ecpm, currencyType, isRenderSuccess,customProperties);
SolarEngineManager.getInstance().trackAdImpression(seAdImpEventModel);
- 因为 GroMore 有两个方法获不同的 PlatformName,所以 GroMore 的开发者在给 medationPlatform 字段赋值时传递可以拿到的 PlatformName 即可。
- 因为热力引擎 SDK 的 ecpm 单位为元,如果 GroMore 的 ecpm 为其他单位,请把 ecpm 转为元再上报,否则会引起数据异常。
变现广告点击事件
用户点击变现广告时上报, _event_name 为 _appClick
方法示例
public synchronized void trackAdClick(SEAdClickEventModel seAdClickEventModel);
SEAdClickEventModel类参数说明:
参数名称 | 参数含义 | 参数类型 | 是否必传 |
adNetworkPlatform | 变现平台,前面为应传值,后面为平台名称 csj:穿山甲国内版 pangle:穿山甲国际版 tencent:腾讯优量汇 baidu:百度百青藤 kuaishou:快手 oppo:OPPO vivo:vivo mi:小米 huawei:华为 applovin:Applovin sigmob:Sigmob mintegral:Mintegral oneway:OneWay vungle:Vungle facebook:Facebook admob:AdMob unity:UnityAds is:IronSource adtiming:AdTiming klein:游可赢 fyber:Fyber(DT Exchange) chartboost:Chartboost adcolony:Adcolony inmobi:Inmobi |
String | 是 |
mediationPlatform | 聚合平台标识,常见聚合平台枚举如下,若您使用的聚合平台不在如下枚举值,您可以自定义命名,并控制字符数在32位。没有聚合平台标识,请设置为 "custom"。 max ironsource admob hyperbid topon cas Tradplus Tobid |
String | 是 |
adType |
展示广告的类型,枚举值如下(传值传前面的枚举简称即可): 如激励广告传:AdType.RewardVideo.intValue()
1:激励视频 |
int | 是 |
adNetworkADID | 变现平台的变现广告位 ID | String | 是 |
customProperties | 开发者传入的自定义属性 | JSONObject | 否 |
调用示例
import com.reyun.solar.engine.SolarEngineManager;
import org.json.JSONObject;
JSONObject customProperties = new JSONObject();
try {
//开发者自定义Json格式上报事件属性
customProperties.put("key1","value1");
customProperties.put("key2","value2");
......
} catch (JSONException e) {
///
}
SEAdClickEventModel seAdClickEventModel = new SEAdClickEventModel("Mintegral","xxx聚合平台名称xxx",AdType.RewardVideo.intValue(),"xxx广告IDxxx",customProperties);
SolarEngineManager.getInstance().trackAdClick(seAdClickEventModel);
应用内购买事件
App 内付费购买时,报送该事件,用于进行购买及内购收入分析。
该事件为用于付费预测模型训练的关键事件,使用系统提供的预测服务时,为必须报送事件。
应用内购买事件的 _event_name 为 _appPur
方法示例
public synchronized void trackPurchase(SEPurchaseEventModel sePurchaseEventModel);
SEPurchaseEventModel类参数说明:
参数名称 | 参数含义 | 参数类型 | 是否必传 |
orderId | 本次购买由系统生成的订单 ID | String | 否,投放荣耀商推、网易有道、豆瓣和oppo时必填 |
payAmount | 本次购买支付的金额,单位:元 | double | 是 |
currencyType | 支付的货币类型,遵循《ISO 4217国际标准》,如 CNY、USD | String | 是 |
payType | 支付方式:如 alipay、weixin、applepay、paypal 等 | String | 否 |
productId | 购买商品的ID | String | 否 |
productName | 商品名称 | String | 否 |
productNum | 购买商品的数量 | int | 否 |
payStatus | 支付状态,例如:成功时,只需要传入 1 1:成功 2:失败 |
int | 是 |
failReason | 支付失败的原因 | String | 否 |
customProperties | 开发者传入的自定义属性 | JSONObject | 否 |
注:支付失败原因 failReason 参数仅在 payStatus 参数为 2 支付失败时才会传入,其他状态传""即可。
调用示例
import com.reyun.solar.engine.SolarEngineManager;
import org.json.JSONObject;
JSONObject customProperties = new JSONObject();
try {
//开发者自定义Json格式上报事件属性
customProperties.put("key1","value1");
customProperties.put("key2","value2");
......
} catch (JSONException e) {
///
}
SEPurchaseEventModel sePurchaseEventModel = new SEPurchaseEventModel("xxx订单IDxxx",50.5,"CNY","weixin","xxx 商品IDxxx","xxx商品名称xxx",1,1,"",customProperties);
SolarEngineManager.getInstance().trackPurchase(sePurchaseEventModel);
订单事件
用户产生订单时上报,_event_name 为 _appOrder
方法示例
public synchronized void trackOrder(SEOrderEventModel seOrderEventModel);
SEOrderEventModel类参数说明:
参数名称 | 参数含义 | 参数类型 | 是否必传 |
orderId | 订单 ID | String | 否,投放荣耀商推、网易有道、豆瓣和oppo时必填 |
payAmount | 订单金额,单位:元 | double | 是 |
currencyType | 支付的货币类型,遵循《ISO 4217国际标准》,如 CNY、USD | String | 是 |
payType | 支付方式:如 alipay、weixin、applepay、paypal 等 | String | 否 |
status | 订单状态 | String | 否 |
customProperties | 开发者传入的自定义属性 | JSONObject | 否 |
调用示例
import com.reyun.solar.engine.SolarEngineManager;
import org.json.JSONObject;
JSONObject customProperties = new JSONObject();
try {
//开发者自定义Json格式上报事件属性
customProperties.put("key1","value1");
customProperties.put("key2","value2");
......
} catch (JSONException e) {
///
}
SEOrderEventModel seOrderEventModel = new SEOrderEventModel("xxx订单IDxxx",50.5,"CNY","weixin","xxx订单状态xxx",customProperties);
SolarEngineManager.getInstance().trackOrder(seOrderEventModel);
注册事件
用户产生注册行为时上报,_event_name 为 _appReg
方法示例
public synchronized void trackAppRegister(SERegisterEventModel seRegisterEventModel);
SERegisterEventModel类参数说明:
参数名称 | 参数含义 | 参数类型 | 是否必传 |
regType | 注册类型如 WeChat、QQ 等自定义值 | String | 是 |
status | 注册状态 | String | 否 |
customProperties | 开发者传入的自定义属性 | JSONObject | 否 |
调用示例
import com.reyun.solar.engine.SolarEngineManager;
import org.json.JSONObject;
JSONObject customProperties = new JSONObject();
try {
//开发者自定义Json格式上报事件属性
customProperties.put("key1","value1");
customProperties.put("key2","value2");
......
} catch (JSONException e) {
///
}
SERegisterEventModel seRegisterEventModel = new SERegisterEventModel("QQ","success",customProperties);
SolarEngineManager.getInstance().trackAppRegister(seRegisterEventModel);
登录事件
用户产生登录行为时上报,_event_name 为 _appLogin,在登录成功后应调用设置账号 ID 方法,以便后续产生的事件中带有登录的账号 ID
方法示例
public synchronized void trackAppLogin(SELoginEventModel seLoginEventModel);
SELoginEventModel类参数说明:
参数名称 | 参数含义 | 参数类型 | 是否必传 |
loginType | 登录类型如 WeChat、QQ 等自定义值 | String | 是 |
status | 登录状态 | String | 否 |
customProperties | 开发者传入的自定义属性 | JSONObject | 否 |
调用示例
import com.reyun.solar.engine.SolarEngineManager;
import org.json.JSONObject;
JSONObject customProperties = new JSONObject();
try {
//开发者自定义Json格式上报事件属性
customProperties.put("key1","value1");
customProperties.put("key2","value2");
......
} catch (JSONException e) {
///
}
SELoginEventModel seLoginEventModel = new SELoginEventModel("QQ","success",customProperties);
SolarEngineManager.getInstance().trackAppLogin(seLoginEventModel);
上报自归因事件
增加归因安装事件,支持统计归因数据,满足客户使用三方归因或者自归因之后的结果数据回传到自定义分析,上报时机支持开发者自定义触发
自归因事件的 _event_name 为 _appAttr
方法示例
public synchronized void trackAttr(SEAttrEventModel seAttrEventModel);
SEAttrEventModel类参数说明:
参数名称 | 参数含义 | 参数类型 | 是否必传 |
adNetwork | 投放广告的渠道 ID,需要与ROI分析匹配 | String | 是 |
subChannel | 投放广告的子渠道 | String | 否 |
adAccountId | 投放广告的投放账号 ID | String | 否 |
adAccountName | 投放广告的投放账号名称 | String | 否 |
adCampaignId | 投放广告的广告计划 ID | String | 否 |
adCampaignName | 投放广告的广告计划名称 | String | 否 |
adOfferId | 投放广告的广告单元 ID | String | 否 |
adOfferName | 投放广告的广告单元名称 | String | 否 |
adCreativeId | 投放广告的广告创意 ID | String | 否 |
adCreativeName | 投放广告的广告创意名称 | String | 否 |
attributionPlatform | 监测平台 | String | 是 |
customProperties | 开发者传入的自定义属性 | JSONObject | 否 |
调用示例
import com.reyun.solar.engine.SolarEngineManager;
import org.json.JSONObject;
JSONObject customProperties = new JSONObject();
try {
//开发者自定义Json格式上报事件属性
customProperties.put("key1","value1");
customProperties.put("key2","value2");
......
} catch (JSONException e) {
///
}
SEAttrEventModel seAttrEventModel = new SEAttrEventModel("xxx广告的渠道IDxxx","xxx投放广告的子渠道xxx","xxx投放广告的投放账号IDxxx","xxx投放广告的投放账号名称xxx","xxx投放广告的广告计划IDxxx","xxx投放广告的广告计划名称xxx","xxx投放广告的广告单元IDxxx","xxx投放广告的广告单元名称xxx","xxx投放广告的广告创意IDxxx","xxx投放广告的广告创意名称xxx","xxx广告监测平台xxx",customProperties);
SolarEngineManager.getInstance().trackAttr(seAttrEventModel);
广告开始展示事件
广告开始展示时调用,_event_name 为 _appAdShowStart
方法示例
public void trackAppAdShowStart(SEAppAdShowStartModel appAdShowStartModel);
SEAppAdShowStartModel类参数说明
参数名称 | 参数含义 | 参数类型 | 是否必传 |
adType
|
广告类型
|
int | 是 |
adPositionType
|
广告位置类型
|
String
|
是 |
adPosition
|
广告点位
|
String
|
是 |
customProperties
|
事件自定义属性
|
JSONObject
|
否 |
调用示例
import com.reyun.solar.engine.infos.SEAppAdShowStartModel;
SEAppAdShowStartModel showStartModel = new SEAppAdShowStartModel.Builder()
.withAdType(AdType.Interstitial.intValue())
.withAdPosition("revive")
.withAdPositionType("reward")
.build();
SolarEngineManager.getInstance().trackAppAdShowStart(showStartModel);