Cuando se produce una impresión, el SDK de anuncios de Google para dispositivos móviles proporciona los datos de los ingresos publicitarios asociados con esa impresión. Puedes usar los datos para calcular el valor del ciclo de vida de un usuario o reenviarlos a otros sistemas relevantes.
El objetivo de esta guía es ayudarte a implementar la captura de datos de ingresos publicitarios a nivel de las impresiones en tu proyecto de Unity.
Requisitos previos
- Asegúrate de haber activado la función de ingresos publicitarios a nivel de las impresiones en la IU de AdMob.
- Complemento de Unity 5.0.0 o una versión posterior
- Completar Primeros pasos. Tu app de Unity ya debería tener importado el complemento Google Mobile Ads para Unity.
Para poder recibir datos de ingresos publicitarios a nivel de las impresiones, debes implementar al menos un formato del anuncio:
Cómo implementar un controlador de eventos pagados
Cada formato de anuncio tiene un evento OnPaidEvent
. Durante el ciclo de vida de un evento de anuncio, el SDK de anuncios de Google para dispositivos móviles supervisa los eventos de impresión y, luego, invoca al controlador con un valor obtenido.
En el siguiente código, se muestra cómo controlar los eventos pagados de un anuncio recompensado:
RewardedAd rewardedAd; private void RequestRewardedAd() { rewardedAd = new RewardedAd("AD_UNIT_ID"); rewardedAd.OnPaidEvent += this.HandleAdPaidEvent; AdRequest adRequest = new AdRequest(); rewardedAd.LoadAd(adRequest); } public void HandleAdPaidEvent(object sender, AdValueEventArgs args) { // TODO: Send the impression-level ad revenue information to your // preferred analytics server directly within this callback. AdValue adValue = args.AdValue; long valueMicros = adValue.Value; string currencyCode = adValue.CurrencyCode; PrecisionType precision = adValue.Precision; ResponseInfo responseInfo = rewardedAd.GetResponseInfo(); string responseId = responseInfo.GetResponseId(); AdapterResponseInfo loadedAdapterResponseInfo = responseInfo.GetLoadedAdapterResponseInfo(); string adSourceId = loadedAdapterResponseInfo.AdSourceId; string adSourceInstanceId = loadedAdapterResponseInfo.AdSourceInstanceId; string adSourceInstanceName = loadedAdapterResponseInfo.AdSourceInstanceName; string adSourceName = loadedAdapterResponseInfo.AdSourceName; string adapterClassName = loadedAdapterResponseInfo.AdapterClassName; long latencyMillis = loadedAdapterResponseInfo.LatencyMillis; Dictionary<string, string> credentials = loadedAdapterResponseInfo.AdUnitMapping; Dictionary<string, string> extras = responseInfo.GetResponseExtras(); string mediationGroupName = extras["mediation_group_name"]; string mediationABTestName = extras["mediation_ab_test_name"]; string mediationABTestVariant = extras["mediation_ab_test_variant"]; }
Para obtener más información sobre la fuente del anuncio ganadora, consulta Cómo recuperar información sobre la respuesta del anuncio.
Cómo realizar la integración con App Attribution Partners (AAP)
Si quieres obtener detalles completos sobre el reenvío de datos de ingresos publicitarios a las plataformas de estadísticas, consulta la guía para socios:
SDK para socios |
---|
Ajustar |
AppsFlyer |
Singular |
Tenjin |
Prácticas recomendadas para la implementación
- Configura el evento
OnPaidEvent
inmediatamente después de crear el objeto de anuncio o cuando tengas acceso a él, y definitivamente antes de mostrar el anuncio. De esta manera, te aseguras de no perder ninguna devolución de llamada. - Envía la información sobre los ingresos publicitarios a nivel de las impresiones a tu servidor de estadísticas preferido de inmediato en el controlador
OnPaidEvent
. Esto garantiza que no descarte accidentalmente ninguna devolución de llamada y evita discrepancias en los datos.
AdValue
AdValue
es una clase que representa el valor monetario que se gana por un anuncio, incluido el código de moneda del valor y su tipo de precisión codificado como se muestra a continuación.
AdValue.PrecisionType |
Descripción |
---|---|
Unknown |
Un valor de anuncio desconocido. Se muestra cuando se habilita el pingback de LTV, pero no hay suficientes datos disponibles. |
Estimated |
Es un valor del anuncio estimado a partir de los datos agregados. |
PublisherProvided |
El valor del anuncio proporcionado por el publicador, como los CPM manuales en un grupo de mediación. |
Precise |
Es el valor exacto de este anuncio. |
En el caso de la mediación, AdMob intenta proporcionar un valor ESTIMATED
para las fuentes de anuncios optimizadas. En el caso de las fuentes de anuncios no optimizadas o en los casos en que no haya suficientes datos agregados para generar una estimación significativa, se muestra el valor PUBLISHER_PROVIDED
.