Bezpieczne sygnały

Bezpieczne sygnały to zakodowane dane zbierane na urządzeniu klienta i udostępniane wybranym licytującym. Z tego przewodnika dowiesz się, jak zbierać i przesyłać bezpieczne sygnały do Google Ad Managera za pomocą pakietu IMA SDK.

Interfejs API bezpiecznych sygnałów wymaga pakietu IMA SDK na Androida w wersji 3.29.0 lub nowszej.

Aby wybrać sygnały i licytujących oraz włączyć udostępnianie bezpiecznych sygnałów, przeczytaj artykuł Udostępnianie bezpiecznych sygnałów licytującym.

Korzystanie z zewnętrznego dostawcy sygnałów

Aby korzystać z bezpiecznych sygnałów, musisz wdrożyć w aplikacji klasę adaptera zbierającego sygnały, która będzie je zbierać, kodować i przekazywać do pakietu IMA SDK.

Postępuj zgodnie z instrukcjami zewnętrznego dostawcy, aby skonfigurować u niego konto, dodać zależności kompilacji i skonfigurować w aplikacji adapter bezpiecznych sygnałów.

Pakiet IMA SDK na Androida automatycznie inicjuje każdy adapter sygnałów bezpiecznych bez konieczności wprowadzania dodatkowych zmian w kodzie.

Oto przykład dodania do projektu adaptera bezpiecznych sygnałów:

Wysyłanie danych niestandardowych

Oprócz korzystania z zewnętrznego dostawcy sygnałów możesz też zbierać, kodować i wysyłać sygnały z danymi niestandardowymi. Aby móc wysyłać bezpieczne sygnały z danymi niestandardowymi, musisz włączyć sygnały niestandardowe w usłudze Ad Manager.

W przypadku każdego żądania reklamy utwórz obiekt SecureSignals zawierający zakodowane dane niestandardowe w postaci ciągu znaków. Następnie dodaj do żądania reklamy obiekt SecureSignals, wywołując metodę adsRequest.setSecureSignals().

Oto przykład w języku 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);
}
...