Indicatori sicuri

Gli indicatori sicuri sono dati codificati raccolti sul dispositivo client e condivisi con offerenti selezionati. Questa guida illustra come raccogliere e inviare indicatori sicuri a Google Ad Manager utilizzando l'SDK IMA.

L'API indicatori sicuri richiede la versione 3.29.0 o successiva dell'SDK IMA per Android.

Per selezionare indicatori e offerenti e attivare la condivisione di indicatori sicuri, consulta Condividere indicatori sicuri con gli offerenti.

Utilizzare un fornitore di indicatori di terze parti

Per utilizzare gli indicatori sicuri, devi implementare una classe di adattatore del raccoltore di indicatori nella tua app per raccogliere gli indicatori, codificarli e trasmetterli all'SDK IMA.

Segui le istruzioni del fornitore di terze parti per creare un account, aggiungere dipendenze di compilazione, e configurare l'adattatore di indicatori sicuri nella tua app.

L'SDK IMA per Android inizializza automaticamente ogni adattatore di indicatori sicuri, senza ulteriori modifiche al codice.

Ecco un esempio di come aggiungere un'opzione di integrazione di indicatori sicuri al tuo progetto:

Inviare dati personalizzati

Oltre a utilizzare un fornitore di indicatori di terze parti, puoi anche raccogliere, codificare e inviare indicatori con dati personalizzati. Prima di poter inviare indicatori sicuri con dati personalizzati, devi attivare gli indicatori personalizzati in Ad Manager.

Per ogni richiesta di annuncio, crea un oggetto SecureSignals contenente i dati personalizzati codificati come stringa. Aggiungi l'oggetto SecureSignals alla richiesta di annunci chiamando adsRequest.setSecureSignals().

Ecco un esempio in Java:

app/src/main/java/com/example/project name/MainActivity.java

...
private void requestAds(String adTagUrl) {
  // Create the ads request.
  AdsRequest request = sdkFactory.createAdsRequest();
  request.setAdTagUrl(adTagUrl);
  request.setContentProgressProvider(
      () -> {
        if (videoPlayer.getDuration() <= 0) {
          return VideoProgressUpdate.VIDEO_TIME_NOT_READY;
        }
        return new VideoProgressUpdate(
            videoPlayer.getCurrentPosition(), videoPlayer.getDuration());
      });
  
  SecureSignals signal = SecureSignals.create("My encoded signal string");
  request.setSecureSignals(signal);
  
  // Request the ad. After the ad is loaded, onAdsManagerLoaded() will be called.
  adsLoader.requestAds(request);
}
...