Wprowadzając kilka zmian w kodzie, możesz połączyć reklamy natywne i banerowe w żądaniach reklamy.
Wymagania wstępne
- Zapoznaj się z przewodnikiem dla początkujących.
Wczytywanie reklamy
Aby wysłać połączone żądanie reklamy natywnej i banerowej:
Przekaż typy
NativeAdType.NATIVEiNativeAdType.BANNERjako listę wNativeAdRequest.Ustaw co najmniej 1 rozmiar banera reklamowego.
Poniższe przykłady pokazują, jak wczytać połączoną reklamę natywną i baner reklamowy:
Kotlin
val adRequest =
NativeAdRequest.Builder(AD_UNIT_ID, listOf(NativeAdType.NATIVE, NativeAdType.BANNER))
// Use setAdSize() or setAdSizes() depending on if you want multiple ad sizes or not.
.setAdSizes(listOf(AdSize.BANNER, AdSize.LARGE_BANNER))
.build()
// Load the native and banner ad with the ad request and callback.
NativeAdLoader.load(adRequest, getNativeAdLoaderCallback())
Java
NativeAdRequest adRequest =
new NativeAdRequest.Builder(AD_UNIT_ID, List.of(NativeAdType.NATIVE, NativeAdType.BANNER))
// Use setAdSize() or setAdSizes() depending on if you want multiple ad sizes or not.
.setAdSizes(Arrays.asList(AdSize.BANNER, AdSize.LARGE_BANNER))
.build();
// Load the native and banner ad with the ad request and callback.
NativeAdLoader.load(adRequest, getNativeAdLoaderCallback());
Ustaw rozmiar reklamy mniejszy niż rozmiar ekranu urządzenia lub mu równy.
Aby określić maksymalny rozmiar ekranu, użyj metody Resources.getDisplayMetrics. Wymiary obiektu AdSize są wyrażone w pikselach niezależnych od gęstości (dp). Podczas porównywania przekonwertuj rozmiar ekranu z pikseli na dp.
Szczegółowe informacje o ograniczeniach rozmiaru znajdziesz w artykule Rozwiązywanie problemów z niewypełnionymi wyświetleniami w usłudze Ad Manager.
Pobierz reklamę z obiektu NativeAdLoaderCallback
W zależności od typu reklamy, która została wczytana, obiekt NativeAdLoaderCallback wywołuje metodę onNativeAdLoaded() w przypadku reklam natywnych i metodę onBannerAdLoaded() w przypadku banerów reklamowych.
Poniższy przykład pobiera banery reklamowe lub reklamy natywne:
Kotlin
private fun getNativeAdLoaderCallback(): NativeAdLoaderCallback {
return object : NativeAdLoaderCallback {
override fun onNativeAdLoaded(nativeAd: NativeAd) {
// Called when a native ad has loaded.
}
override fun onBannerAdLoaded(bannerAd: BannerAd) {
// Called when a banner ad has loaded.
}
}
}
Java
private NativeAdLoaderCallback getNativeAdLoaderCallback() {
return new NativeAdLoaderCallback() {
@Override
public void onNativeAdLoaded(@NonNull NativeAd nativeAd) {
// Called when a native ad has loaded.
}
@Override
public void onBannerAdLoaded(@NonNull BannerAd bannerAd) {
// Called when a banner ad has loaded.
}
};
}