NOTA: Asegúrate de tener instalado el último SDK de TopOn Unity (versión TopOn_Unity_Release_Android&iOS_5.9.51 o superior)
El SDK de Tenjin puede recopilar datos de ingresos a nivel de impresiones de TopOn y enviar eventos de ingresos a Tenjin. Esta integración envía información sobre los ingresos correspondientes a cada impresión publicitaria servida desde TopOn. Estos son los pasos para realizar la integración:
- Instala el SDK de TopOn Unity: https://docs.toponad.com/#/en-us/unity/download/package?id=topon-unity-sdk-integration-tool
- Al inicializar el SDK de Tenjin, suscríbete a TopOn Impressions:
var tenjin = Tenjin.getInstance("<SDK_KEY>");
tenjin.Connect();
tenjin.SubscribeTopOnImpressions();A continuación se muestra un ejemplo de la integración de TopOn Banner y de cómo suscribirse a los eventos de impresiones.
public class TopOnBehavior : MonoBehaviour
{
void Start()
{
InitializeTopOn();
}
private void InitializeTopOn()
{
var tenjin = Tenjin.getInstance("<YOUR-TENJIN-SDK_KEY>");
tenjin.Connect();
tenjin.SubscribeTopOnImpressions();
AnyThinkAds.API.ATSDKAPI.setChannel("<YOUR-APP-CHANNEL>");
AnyThinkAds.API.ATSDKAPI.setSubChannel("<YOUR-APP-SUB-CHANNEL>");
AnyThinkAds.API.ATSDKAPI.setLogDebug(true);
AnyThinkAds.API.ATSDKAPI.setGDPRLevel(AnyThinkAds.API.ATSDKAPI.PERSONALIZED);
AnyThinkAds.API.ATSDKAPI.initSDK("<YOUR-APP_ID>", "<SDK_KEY>");
// Load Banner
Dictionary<string, object> jsonmap = new Dictionary<string,object>();
#if UNITY_ANDROID && !UNITY_EDITOR
AnyThinkAds.API.ATSize bannerSize = new AnyThinkAds.API.ATSize(320, 50, true);
#elif UNITY_IPHONE && !UNITY_EDITOR
AnyThinkAds.API.ATSize bannerSize = new AnyThinkAds.API.ATSize(320, 50, false);
#else
AnyThinkAds.API.ATSize bannerSize = new AnyThinkAds.API.ATSize(320, 50, false);
#endif
jsonmap.Add(AnyThinkAds.API.ATBannerAdLoadingExtra.kATBannerAdLoadingExtraBannerAdSizeStruct, bannerSize);
AnyThinkAds.API.ATBannerAd.Instance.loadBannerAd("<YOUR-PLACEMENT-BANNER-AD-ID>", jsonmap);
// Show Banner
AnyThinkAds.API.ATBannerAd.Instance.showBannerAd("<YOUR-PLACEMENT-BANNER-AD-ID>", AnyThinkAds.API.ATBannerAdLoadingExtra.kATBannerAdShowingPisitionBottom);
//Ad Impression Data Event
AnyThinkAds.API.ATInterstitialAd.Instance.client.onAdShowEvent += (sender, args) =>
{
Debug.Log($"!!! Unity got ATInterstitialAd impression data - {args}");
};
AnyThinkAds.API.ATBannerAd.Instance.client.onAdImpressEvent += (sender, args) =>
{
Debug.Log($"!!! Unity got ATBannerAd impression data - {args}");
};
AnyThinkAds.API.ATRewardedVideo.Instance.client.onAdVideoStartEvent += (sender, args) =>
{
Debug.Log($"!!! Unity got ATRewardedVideo impression data - {args}");
};
AnyThinkAds.API.ATNativeAd.Instance.client.onAdImpressEvent += (sender, args) =>
{
Debug.Log($"!!! Unity got ATNativeAd impression data - {args}");
};
}
public void GoBack()
{
// Hide banner ad
AnyThinkAds.API.ATBannerAd.Instance.hideBannerAd("<YOUR-PLACEMENT-BANNER-AD-ID>");
}- [IMPORTANTE] Si otra dependencia ya está utilizando TopOn Callbacks, es posible que los métodos de suscripción no funcionen. En ese caso, puedes utilizar el
TopOnImpressionFromJSON(string json)Método para enviar manualmente cada impresión con los campos que se indican en la tabla siguiente. Para ello se requiere el SDK de Tenjin Unity v1.13.1 o superior.
Ejemplo de datos de ingresos a nivel de impresión de TopOn:
| Parámetro | ¿Es obligatorio? | Ejemplo |
| adsource_index | No | 0 |
| tipo_de_red_publicitaria | No | Cadena |
| is_header_bidding_adsource | No | Int |
| ecpm_precision | No | Cadena |
| adsource_id | No | 5656 |
| ecpm | No | 1 |
| scenario_id | No | Cadena |
| regla_personalizada | No | Cadena |
| sub_canal | No | testSubChannel |
| ingresos_del_editor | Sí | 0.001 |
| nombre_de_la_recompensa_del_escenario | No | Cadena |
| canal | No | testChannel |
| topon_ad_format | No | Cadena |
| segment_id | No | 0 |
| país | No | DE |
| show_id | No | Cadena |
| número_de_recompensa_del_escenario | No | 0 |
| identificador_de_ubicación_en_la_red | No | ca-app-pub-3940256099942544%2F6300978111 |
| topon_placement_id | No | Cadena |
| ecpm_level | No | 1 |
| reward_user_custom_data | No | Cadena |
| identificador_de_la_empresa_de_la_red | No | 2 |
| moneda | No | USD |
| precisión | No | Cadena |