Entrate pubblicitarie a livello di impressione

Seleziona la piattaforma: Android iOS Unity Android (Legacy)

Quando si verifica un'impressione, Google Mobile Ads SDK chiama il gestore di eventi a pagamento con i dati sulle entrate associati. Implementando questo gestore, puoi utilizzare i dati per calcolare il lifetime value di un utente o inoltrarli a valle ad altri sistemi pertinenti.

Questa guida ha lo scopo di aiutarti a implementare l'acquisizione dei dati LTV nella tua app per iOS.

Prerequisiti

Implementare un gestore di eventi a pagamento

Ogni formato dell'annuncio ha una paidEventHandler proprietà di tipo GADPaidEventHandler. Durante il ciclo di vita di un evento dell'annuncio, Google Mobile Ads SDK monitora gli eventi di impressione e richiama il gestore con un valore guadagnato.

Il seguente esempio gestisce gli eventi a pagamento per un annuncio con premio:

Swift

rewardedAd?.paidEventHandler = { adValue in
  // TODO: Send the impression-level ad revenue information to your preferred
  // analytics server directly within this callback.

  // Extract the impression-level ad revenue data.
  let value = adValue.value
  let currencyCode = adValue.currencyCode
  let precision = adValue.precision

  print(
    "Ad paid event. Value: \(value) \(currencyCode), with precision: \(precision)."
  )
}

Objective-C

rewardedAd.paidEventHandler = ^(GADAdValue *_Nonnull adValue) {
  // TODO: Send the impression-level ad revenue information to your preferred
  // analytics server directly within this callback.

  // Extract the impression-level ad revenue data.
  NSDecimalNumber *value = adValue.value;
  NSString *currencyCode = adValue.currencyCode;
  GADAdValuePrecision precision = adValue.precision;

  NSLog(@"Ad paid event. Value: %@ %@, with precision: %ld.", value, currencyCode,
        (long)precision);
};

Identificare il nome di un'origine annuncio di eventi personalizzati

Per le origini annuncio di eventi personalizzati, adSourceName proprietà fornisce il nome dell'origine annuncio Custom event. Se utilizzi più eventi personalizzati, il nome dell'origine annuncio non è sufficientemente granulare per distinguere tra più eventi personalizzati. Per individuare un evento personalizzato specifico:

  1. Ottieni la proprietà adNetworkClassName.
  2. Imposta un nome di origine annuncio univoco.

Il seguente esempio imposta un nome di origine annuncio univoco per un evento personalizzato:

Swift

func uniqueAdSourceName(for loadedAdNetworkResponseInfo: AdNetworkResponseInfo) -> String {
  var adSourceName: String = loadedAdNetworkResponseInfo.adSourceName ?? ""
  if adSourceName == "Custom Event" {
    if loadedAdNetworkResponseInfo.adNetworkClassName
      == "MediationExample.SampleCustomEventSwift"
    {
      adSourceName = "Sample Ad Network (Custom Event)"
    }
  }
  return adSourceName
}

Objective-C

- (NSString *)uniqueAdSourceNameForAdNetworkResponseInfo:
    (GADAdNetworkResponseInfo *)loadedAdNetworkResponseInfo {
  NSString *adSourceName = loadedAdNetworkResponseInfo.adSourceName;
  if ([adSourceName isEqualToString:@"Custom Event"]) {
    if ([loadedAdNetworkResponseInfo.adNetworkClassName isEqualToString:@"SampleCustomEvent"]) {
      adSourceName = @"Sample Ad Network (Custom Event)";
    }
  }
  return adSourceName;
}

Per ulteriori informazioni sull'origine annuncio vincente, consulta Recuperare informazioni sulla risposta dell'annuncio.

Best practice per l'implementazione

  • Imposta il gestore immediatamente dopo aver creato o ottenuto l'accesso all'oggetto annuncio e sicuramente prima di mostrare l'annuncio. In questo modo, non perderai alcun callback di eventi a pagamento.
  • Invia le informazioni sugli eventi a pagamento al server di analisi che preferisci immediatamente al momento della chiamata del metodo paidEventHandler. In questo modo, non perderai accidentalmente alcun callback ed eviterai discrepanze nei dati.

GADAdValue

GADAdValue è una classe che rappresenta il valore monetario guadagnato per un annuncio, incluso il codice valuta del valore e il tipo di precisione codificato come segue.

GADAdValuePrecision Descrizione
GADAdValuePrecisionUnknown Un valore dell'annuncio sconosciuto. Viene restituito quando il pingback LTV è attivato, ma non sono disponibili dati sufficienti.
GADAdValuePrecisionEstimated Il valore di un annuncio stimato a partire da dati aggregati.
GADAdValuePrecisionPublisherProvided Il valore di un annuncio fornito dal publisher, ad esempio i CPM manuali in un gruppo di mediazione.
GADAdValuePrecisionPrecise L'esatto valore pagato per questo annuncio.

Testare le impressioni da Open Bidding

Dopo che si verifica un evento di entrate pubblicitarie a livello di impressione per un'origine annuncio Open Bidding tramite una richiesta di test, ricevi solo i seguenti valori:

  • GADAdValuePrecisionUnknown: indica il tipo di precisione.
  • 0: indica il valore dell'annuncio.

In precedenza, il tipo di precisione poteva essere un valore diverso da GADAdValuePrecisionUnknown e un valore dell'annuncio superiore a 0.

Per informazioni dettagliate sull'invio di una richiesta di annuncio di test, consulta Attivare i dispositivi di test.