集成展现级收入数据
开始之前
- 确保已集成 OpenMediation Unity Package v2.1.0 或更高版本。
- 确保已集成 OpenMediation Android 或 iOS SDK v2.1.0 或更高版本。
展现级收入数据
展现级收入数据作为 ImpressionData 对象的一部分返回。这是相关数据字段的列表,包括说明和类型。
Field Name | Datatype | Description |
---|---|---|
impression_id | String | 广告展现 id |
instance_id | String | 聚合系统内分配给 instance 的唯一 id |
instance_name | String | 在聚合前台设置的 instance 名称 |
instance_priority | Integer | Instance 在当前 mediation rule 下的优先级顺序 |
ad_network_name | String | Instance 所属的ad network的名称 |
ad_network_unit_id | String | Instance中填写的ad network的unit/placement/zone的id (Rewarded Video/Interstitial/Banner/Native/Splash/Cross Promote) |
mediation_rule_id | String | 聚合系统内分配给mediation rule的唯一id |
mediation_rule_name | String | mediation rule的名称 |
mediation_rule_type | String | mediation rule的优化类型,Manual(手动排序)或者Auto(自动排序) |
mediation_rule_priority | Integer | mediation rule在聚合前台的排序顺序 |
placement_id | String | 聚合系统内分配给广告位的唯一id |
placement_name | String | 广告位名称 |
placement_ad_type | String | 广告位类型: Banner/Native/Rewarded Video/Interstitial/Splash/CrossPromote |
scene_name | String | 场景名称,Banner/Native/Splash 则为空 |
currency | String | 货币单位,固定值,“USD” |
revenue | Double | 本次展现带来的收益 |
precision | String | 收益精度: undisclosed - 非公开数据,例如FAN要求不得存储收益数据 exact - 精准值,一般是in-app bidding类型的instance带来的收益 estimated - 预估值,由普通instance历史收益数据预估得出 |
ab_group | String | 平台使用了A / B测试 |
lifetime_value | Double | 当前用户生命周期内已经产生的广告收益 |
实现回调接口
OpenMediation SDK 会触发回调事件以通知您有关所显示广告的信息。 ImpressionDataCallback 是一个可选的侦听器,您可以将其实现为接收广告展示数据。 该侦听器将为您提供有关所有广告单元的信息,并且您可以使用 ILRD 数据本身来识别不同的广告。
如果要将 ImpressionDataCallback 添加到您的应用程序,请确保在初始化 OpenMediation SDK 之前声明了侦听器。
示例:
void Start() {
OmEvents.onImpressionDataCallback += ImpressionData;
OmEvents.onImpressionDataErrorCallback += ImpressionDataError;
}
void ImpressionData(OmImpressionData impressionData) {
// To make it easy to use, you can refer to each field separately,
// or get all information using the allData method:
if (impressionData != null) {
string allData = impressionData.allData;
string adNetworkName = impressionData.adNetworkName;
double? revenue = impressionData.revenue;
}
}
void ImpressionDataError(string error) {
}
请注意,需要您先在 OpenMediation 前台启用了 ILRD 功能,才能接收到 ImpressionData 事件,否则将会收到 ImpressionDataError 的事件。
将数据发送到其他工具或供应商
收到展示数据后,您可以将其提供给内部商务智能(BI)工具,或将其发送给第三方归因和分析提供商以进行进一步分析。
以下示例显示了如何将ILRD发送到 Google Analytics for Firebase。 您可以进行一些必要的更改,以便与第三方报告工具或您自己专有的优化工具和数据库集成。
void ImpressionData(OmImpressionData impressionData) {
if (impressionData != null) {
// Feed impression data into internal tools or send to third-party analytics
Firebase.Analytics.Parameter[] impressionParameters = new[] {
new Firebase.Analytics.Parameter("ad_platform", "OpenMediation"),
new Firebase.Analytics.Parameter("ad_source", impressionData.adNetworkName),
new Firebase.Analytics.Parameter("ad_unit_name", impressionData.placementName),
new Firebase.Analytics.Parameter("ad_format", impressionData.placementAdType),
new Firebase.Analytics.Parameter("value", impressionData.revenue),
new Firebase.Analytics.Parameter("currency", impressionData.currency),
new Firebase.Analytics.Parameter("precision", impressionData.precision)
};
Firebase.Analytics.FirebaseAnalytics.LogEvent("ad_impression", impressionParameters);
}
}
评论
请登录写评论。