Z tego przewodnika dowiesz się, jak zintegrować adapter do zapośredniczenia z aplikacją na Androida.
Wymagania wstępne
Zanim zintegrujesz mediację w przypadku formatu 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:Google Mobile Ads SDK (Legacy) 18.3.0 lub nowsza.
Inicjowanie Google Mobile Ads SDK (Legacy)
Z tego krótkiego przewodnika dowiesz się, jak zainicjować Google Mobile Ads SDK (Legacy). Podczas tego połączenia inicjującego inicjowane są też adaptery mediacji. Aby mieć pewność, że w pierwszym żądaniu reklamy uczestniczą wszystkie sieci reklamowe, przed wczytaniem reklam poczekaj na zakończenie inicjowania.
Poniższy przykładowy kod pokazuje, jak sprawdzić stan inicjowania każdego adaptera przed wysłaniem żądania reklamy.
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 dokumentacji na temat getMediationAdapterClassName().
Inicjowanie obiektu 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ójne działanie zapośredniczonych sieci reklamowych.
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 Twoja aplikacja nadal musi przestrzegać zasad sieci zapośredniczonej, która dostarczyła reklamę.
- Użyj
loadAd()zamiastloadAds() - Metoda
loadAds()wyświetla tylko reklamy Google. W przypadku reklam wyświetlanych w ramach mediacji używaj koduloadAd().
Amerykańskie przepisy stanowe o ochronie prywatności i RODO
Jeśli musisz zachować zgodność z amerykańskimi przepisami stanowymi o ochronie prywatności lub Ogólnym rozporządzeniem 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 zapośredniczających reklamy do listy partnerów reklamowych w ramach amerykańskich przepisów stanowych lub RODO 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 na wykorzystanie danych zgodnie z RODO za pomocą pakietu SDK platformy do personalizowania wiadomości wyświetlanych użytkownikom (UMP) od Google.