Ingresos publicitarios a nivel de las impresiones

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

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.