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 secure signals 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 licytującym bezpiecznych sygnałów.
Korzystanie z zewnętrznego dostawcy sygnałów
Aby korzystać z bezpiecznych sygnałów, musisz wdrożyć w aplikacji klasę adaptera do zbierania sygnałów, 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. Dodaj zależności kompilacji i skonfiguruj adapter bezpiecznych sygnałów w aplikacji.
Pakiet IMA SDK na Androida automatycznie inicjuje każdy adapter sygnałów bezpiecznych bez konieczności wprowadzania dodatkowych zmian w kodzie.
Oto przykład dodawania adaptera sygnałów bezpiecznych do projektu:
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. Zanim zaczniesz 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 obiekt SecureSignals
do żądania reklamy, wywołując funkcję 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);
}
...