Tenjin SDK可以获取AdMob的广告展示层级收入数据,并将收入事件发送至Tenjin。这个集成将把每一次AdMob广告展示获得的收入数据发送给Tenjin。以下是集成步骤:
- 安装 AdMob Unity SDK:
https://developers.google.com/admob/unity/quick-start#download\_the\_mobile\_ads\_unity\_plugin
请确保您已安装最新版的 AdMob Unity SDK(版本需高于 GoogleMobileAds-v7.0.0)。同时,请使用 Tenjin SDK 版本v1.15.9或更高版本。 - 在您的 AdMob 账户中开启“impression-level ad revenue(展示级广告收入)”相关设置。
- 请在https://admob.google.com登录你的 AdMob 账户:
- 侧边栏点击Settings
- Click the Account tab.
- In the Account controls section, turn on the toggle on “Impression-level ad revenue” and click Save.
- 使用
HandleAdPaidEvent方法,在该方法中您可以结合下表中的字段发送每一次广告展示数据。 对于 value_micros 字段,AdMob 以“微单位”(micro units)形式返回数值,因此在 iOS 系统中,需要将其除以 1,000,000(如下方示例代码所示)
C#
[System.Serializable]
public class AdMobImpressionData
{
public string ad_unit_id;
public string currency_code;
public string response_id;
public long value_micros;
public string mediation_adapter_class_name;
public string precision_type;
}
private void HandleAdPaidEvent(string adUnitId, ResponseInfo responseInfo, AdValue adValue)
{
long adjustedValueMicros = adValue.Value;
#if UNITY_IOS
adjustedValueMicros /= 1000000;
#endif
// Create impression data object for serialization
var impressionData = new AdMobImpressionData
{
ad_unit_id = adUnitId,
currency_code = adValue.CurrencyCode,
response_id = responseInfo.GetResponseId(),
value_micros = adjustedValueMicros,
mediation_adapter_class_name = responseInfo.GetLoadedAdapterResponseInfo().AdapterClassName,
precision_type = adValue.Precision.ToString()
};
string json = JsonUtility.ToJson(impressionData);
Tenjin.getInstance("<YOUR-TENJIN-SDK_KEY>").AdMobImpressionFromJSON(json);
}以下是来自 AdMob 的展示级收入数据示例:
| 参数 | 必需? | 例子 |
|---|---|---|
| ad_unit_id | 否 | ca-app-pub-3940256099942544%2F2934735716 |
| currency_code | 否 | USD |
| response_id | 否 | CKak5t_oovcCFRPJdwodJXQNRw |
| value_micros | 是 | 0.0001 |
| mediation_adapter_class_name | 否 | GADMAdapterGoogleAdMobAds |
| precision_type | 否 | Unknown |