Z tego przewodnika dowiesz się, jak zintegrować adapter do zapośredniczenia z aplikacją na Androida.
Wymagania wstępne
Zanim zintegrujesz mediację z formatem reklamy, musisz zintegrować ten format reklamy z aplikacją:
- Banery reklamowe
- Reklamy pełnoekranowe
- Reklamy natywne
- Reklamy z nagrodą
- Reklamy pełnoekranowe z nagrodą
Dopiero zaczynasz korzystać z zapośredniczenia? Przeczytaj wprowadzenie do zapośredniczenia.
W przypadku określania stawek: pakiet SDK do reklam mobilnych Google w wersji 18.3.0 lub nowszej.
Inicjowanie pakietu SDK do reklam mobilnych Google
Przewodnik Szybki start pokazuje, jak zainicjować pakiet SDK do reklam mobilnych Google. Podczas tego wywołania inicjującego inicjowane są też adaptery mediacji. Aby zweryfikować pełne uczestnictwo każdej sieci reklamowej w pierwszym żądaniu reklamy, przed wczytaniem reklam poczekaj na zakończenie inicjowania.
Poniższy przykładowy kod pokazuje, jak przed wysłaniem żądania reklamy sprawdzić stan inicjowania każdego adaptera.
Java
public void initialize(Context context) {
new Thread(
() ->
// Initialize the Google Mobile Ads SDK on a background thread.
MobileAds.initialize(context, this::logAdapterStatus))
.start();
}
private void logAdapterStatus(InitializationStatus initializationStatus) {
// Check each adapter's initialization status.
Map<String, AdapterStatus> statusMap = initializationStatus.getAdapterStatusMap();
for (Map.Entry<String, AdapterStatus> entry : statusMap.entrySet()) {
String adapterClass = entry.getKey();
AdapterStatus status = entry.getValue();
Log.d(
TAG,
String.format(
"Adapter name: %s, Description: %s, Latency: %d",
adapterClass, status.getDescription(), status.getLatency()));
}
}
Kotlin
fun initialize(context: Context) {
CoroutineScope(Dispatchers.IO).launch {
// Initialize the Google Mobile Ads SDK on a background thread.
MobileAds.initialize(context, ::logAdapterStatus)
}
}
private fun logAdapterStatus(initializationStatus: InitializationStatus) {
// Check each adapter's initialization status.
for ((adapterClass, status) in initializationStatus.adapterStatusMap) {
Log.d(
TAG,
"Adapter: $adapterClass, Status: ${status.description}, Latency: ${status.latency}ms",
)
}
}
Sprawdzanie, która klasa adaptera sieci reklamowej wczytała reklamę
Oto przykładowy kod, który rejestruje nazwę klasy sieci reklamowej w przypadku reklamy banerowej:
Java
ResponseInfo responseInfo = ad.getResponseInfo();
String adapterClassName = null;
if (responseInfo != null) {
adapterClassName = responseInfo.getMediationAdapterClassName();
}
Log.d(TAG, "Adapter class name: " + adapterClassName);
Kotlin
Log.d(TAG, "Adapter class name:" + ad.responseInfo?.mediationAdapterClassName)
Szczegółowe informacje o tej metodzie znajdziesz w ResponseInfo
dokumentacjigetMediationAdapterClassName()
.
Zainicjuj obiekt reklamy za pomocą instancji Activity.
W konstruktorze nowego obiektu reklamy (np. AdManagerAdView
) musisz przekazać obiekt typu Context
.
Ten Context
jest przekazywany do innych sieci reklamowych podczas korzystania z zapośredniczenia. Niektóre sieci reklamowe wymagają bardziej restrykcyjnego Context
typu Activity
i mogą nie wyświetlać reklam bez instancji Activity
. Dlatego podczas inicjowania obiektów reklam zalecamy przekazywanie instancji Activity
, aby zapewnić spójność działania z sieciami reklamowymi, w których stosujesz zapośredniczanie.
Używanie banerów reklamowych w zapośredniczeniu
Pamiętaj, aby wyłączyć odświeżanie w interfejsach wszystkich zewnętrznych źródeł reklam w przypadku jednostek reklamowych banerów używanych w zapośredniczeniu. Zapobiega to podwójnemu odświeżaniu, ponieważ Ad Manager również wywołuje odświeżanie na podstawie częstotliwości odświeżania jednostki banera reklamowego.
Korzystanie z reklam natywnych w ramach zapośredniczenia
Oto kilka sprawdzonych metod, które warto wziąć pod uwagę podczas wdrażania mediacji natywnej.
- Zasady dotyczące prezentowania reklam natywnych
- Każda sieć reklamowa ma własne zasady. Pamiętaj, że podczas korzystania z zapośredniczenia aplikacja nadal musi przestrzegać zasad sieci zapośredniczonej, która dostarczyła reklamę.
- Używaj
loadAd()
zamiastloadAds()
- Metoda
loadAds()
wyświetla tylko reklamy Google. W przypadku reklam wyświetlanych w ramach zapośredniczonej sieci reklamowej użyjloadAd()
.
Amerykańskie przepisy stanowe o ochronie prywatności i RODO
Jeśli musisz przestrzegać amerykańskich przepisów stanowych o ochronie prywatności lub Ogólnego rozporządzenia o ochronie danych (RODO), wykonaj czynności opisane w sekcjach Ustawienia dotyczące przepisów stanowych USA lub Ustawienia dotyczące RODO, aby dodać partnerów do mediacji na listach partnerów reklamowych w sekcji Prywatność i wyświetlanie wiadomości w usłudze Ad Manager. Jeśli tego nie zrobisz, partnerzy mogą nie wyświetlać reklam w Twojej aplikacji.
Dowiedz się więcej o włączaniu ograniczonego przetwarzania danych i uzyskiwaniu zgody wymaganej przez RODO za pomocą pakietu SDK platformy do personalizowania wiadomości wyświetlanych użytkownikom (UMP) od Google.