Optionen für native Anzeigen

Native Anzeigen bieten viele erweiterte Funktionen, mit denen Sie und die Nutzerfreundlichkeit von Werbeanzeigen optimieren. In diesem Leitfaden erfahren Sie, wie Sie die erweiterten Funktionen nativer Anzeigen nutzen können.

Vorbereitung

Asset-Einstellungen

Bevorzugte Einstellungen für das Medienseitenverhältnis

Mit den Steuerelementen für das Medienseitenverhältnis können Sie eine Einstellung für das Seitenverhältnis von Anzeigen-Creatives.

NativeAdOptions.Builder.setMediaAspectRatio() anrufen mit NativeAdOptions.MediaAspectRatio Wert.

  • Wenn die Richtlinie nicht konfiguriert ist, kann die zurückgegebene Anzeige ein beliebiges Medienseitenverhältnis haben.

  • Wenn dies festgelegt ist, können Sie die Nutzererfahrung verbessern, indem Sie den Parameter das bevorzugte Seitenverhältnis.

Im folgenden Beispiel wird das SDK angewiesen, ein Rückgabe-Bild oder -Video mit einem bestimmte Seitenverhältnis.

NativeAdOptions nativeAdOptions = new NativeAdOptions.Builder()
                              .setMediaAspectRatio(NativeAdOptions.NATIVE_MEDIA_ASPECT_RATIO_LANDSCAPE)
                              .build();

AdLoader loader = new AdLoader.Builder(this, 'ca-app-pub-3940256099942544/2247696110')
                              .withNativeAdOptions(nativeAdOptions)
                              .build();

Downloadsteuerung für Bilder

Mit der Steuerung für den Bilddownload können Sie festlegen, ob Bild-Assets oder nur URIs die vom SDK zurückgegeben wurden.

Rufen Sie NativeAdOptions.Builder.setReturnUrlsForImageAssets() mit einem boolean-Wert auf.
  • Die Einstellungen für den Bilddownload sind standardmäßig deaktiviert.

  • Wenn diese Option deaktiviert ist, werden das Bild und der URI automatisch vom Google Mobile Ads SDK ausgefüllt.

  • Wenn diese Option aktiviert ist, füllt das SDK nur den URI aus, sodass Sie die Bilder selbst zu erstellen.

Im folgenden Beispiel wird das SDK angewiesen, nur den URI zurückzugeben.

NativeAdOptions nativeAdOptions = new NativeAdOptions.Builder()
                                                     .setReturnUrlsForImageAssets(true)
                                                     .build();

AdLoader loader = new AdLoader.Builder(this, 'ca-app-pub-3940256099942544/2247696110')
                              .withNativeAdOptions(nativeAdOptions)
                              .forNativeAd(nativeAd -> {
                                List<Uri> imageUris = new ArrayList<>();
                                for (Image image : nativeAd.getImages()) {
                                  imageUris.add(image.getUri());
                                }
                              })
                              .build();

Steuerelemente für Bildnutzlast

Manche Anzeigen enthalten nicht nur ein, sondern mehrere Bilder. Mit dieser Funktion können Sie angeben, ob in Ihrer App alle Bilder oder nur ein Bild angezeigt werden kann.

NativeAdOptions.Builder.setRequestMultipleImages() anrufen mit einem boolean-Wert.
  • Die Steuerelemente für die Bildnutzlast sind standardmäßig deaktiviert.

  • Wenn diese Option deaktiviert ist, weist deine App das SDK an, nur die erstes Bild für alle Assets, die eine Reihe enthalten.

  • Wenn diese Option aktiviert ist, gibt Ihre App an, dass sie bereit ist, alle Bilder für alle Assets anzuzeigen, die mehr als ein Bild haben.

Im folgenden Beispiel wird das SDK angewiesen, mehrere Bild-Assets zurückzugeben.

NativeAdOptions nativeAdOptions = new NativeAdOptions.Builder()
                                                     .setRequestMultipleImages(true)
                                                     .build();

AdLoader loader = new AdLoader.Builder(this, 'ca-app-pub-3940256099942544/2247696110')
                              .withNativeAdOptions(nativeAdOptions)
                              .build();

Datenschutzinfo-Placements

Einstellungen für die Datenschutzinfo-Position

Mit den Steuerelementen für die AdChoices-Position können Sie festlegen, in welcher Ecke die Datenschutzinfo-Symbol.

NativeAdOptions.Builder.setAdChoicesPlacement() anrufen mit NativeAdOption.AdChoicesPlacement Wert.

  • Wenn die Richtlinie nicht konfiguriert ist, wird die Position des Datenschutzinfo-Symbols oben rechts festgelegt.

  • Wenn festgelegt, wird das Datenschutzinfo-Symbol wie angefordert an der benutzerdefinierten Position platziert.

Im folgenden Beispiel sehen Sie, wie eine benutzerdefinierte AdChoices-Bildposition festgelegt wird.

NativeAdOptions nativeAdOptions = new NativeAdOptions.Builder()
                                                     .setAdChoicesPlacement(NativeAdOptions.ADCHOICES_BOTTOM_RIGHT)
                                                     .build();

AdLoader loader = new AdLoader.Builder(this, 'ca-app-pub-3940256099942544/2247696110')
                              .withNativeAdOptions(nativeAdOptions)
                              .build();

Benutzerdefinierte Ansicht „Datenschutzinfo“

Mit der Funktion „Datenschutzinfo“ können Sie das Symbol „Datenschutzinfo“ in einem benutzerdefinierten Standort Dies unterscheidet sich von den Steuerelementen für die AdChoices-Position, eine der vier Ecken angeben.

NativeAdView.setAdChoicesView() anrufen mit AdChoicesView Wert.

Im folgenden Beispiel wird gezeigt, wie Sie eine benutzerdefinierte Datenschutzinfo-Ansicht festlegen. Datenschutzinfo-Symbol, gerendert in AdChoicesView.


public void onNativeAdLoaded(NativeAd ad) {
    NativeAdView nativeAdView = new NativeAdView(getApplicationContext());
    AdChoicesView adChoicesView = new AdChoicesView(this);
    nativeAdView.setAdChoicesView(adChoicesView);
}

Videosteuerelemente

Verhalten bei Stummschaltung starten

Mit dieser Funktion können Sie den Startaudio für ein Video deaktivieren oder aktivieren.

VideoOptions.Builder.setStartMuted() anrufen mit einem boolean-Wert.
  • Die Stummschaltung ist standardmäßig aktiviert.

  • Wenn diese Option deaktiviert ist, fordert Ihre App das Video an, mit dem das Video beginnen soll. Audio.

  • Wenn diese Option aktiviert ist, wird in Ihrer App angefordert, dass das Video stumm gestartet wird.

Das folgende Beispiel zeigt, wie das Video mit nicht stummgeschaltetem Ton gestartet wird.

VideoOptions videoOptions = new VideoOptions.Builder()
                                            .setStartMuted(false)
                                            .build();

NativeAdOptions adOptions = new NativeAdOptions.Builder()
                                               .setVideoOptions(videoOptions)
                                               .build();

AdLoader loader = new AdLoader.Builder(this, 'ca-app-pub-3940256099942544/2247696110')
                              .withNativeAdOptions(adOptions).build();

Benutzerdefinierte Wiedergabesteuerung

So können Sie benutzerdefinierte Videoeingabesteuerelemente zum Abspielen, Pausieren oder Stummschalten der Video.

Rufen Sie VideoOptions.Builder.setCustomControlsRequested() mit einem boolean-Wert auf.
  • Benutzerdefinierte Wiedergabesteuerungen sind standardmäßig deaktiviert.

  • Wenn diese Option deaktiviert ist, werden in deinem Video vom SDK gerenderte Eingabesteuerelemente angezeigt.

  • Wenn die Anzeige über Video-Content verfügt und benutzerdefinierte Steuerelemente aktiviert sind, sollten Sie Dann werden Ihre benutzerdefinierten Steuerelemente zusammen mit der Anzeige eingeblendet, da keine die sich selbst steuern. Die Steuerelemente können dann die relevanten Methoden auf dem VideoController

Das folgende Beispiel zeigt, wie Sie ein Video mit benutzerdefinierten Wiedergabesteuerungen anfordern.

VideoOptions videoOptions = new VideoOptions.Builder()
                                            .setCustomControlsRequested(true)
                                            .build();

NativeAdOptions adOptions = new NativeAdOptions.Builder()
                                               .setVideoOptions(videoOptions)
                                               .build();

AdLoader loader = new AdLoader.Builder(this, 'ca-app-pub-3940256099942544/2247696110')
                              .withNativeAdOptions(adOptions).build();

Prüfen, ob benutzerdefinierte Steuerelemente aktiviert sind

Da zum Zeitpunkt der Anfrage nicht bekannt ist, ob mit der zurückgegebenen Anzeige benutzerdefinierte Videosteuerelemente verwenden, müssen Sie überprüfen, ob benutzerdefinierte Steuerelemente aktiviert sind.

Java

@Override
public void onNativeAdLoaded(NativeAd nativeAd) {
  MediaContent mediaContent = nativeAd.getMediaContent();
  if (mediaContent != null) {
    VideoController videoController = mediaContent.getVideoController();
    boolean canShowCustomControls = videoController.isCustomControlsEnabled();
  }
}

Kotlin

NativeAd.OnNativeAdLoadedListener { ad ->
  val mediaContent = ad.mediaContent
  if (mediaContent != null) {
    val videoController = mediaContent.videoController
    val canShowCustomControls = videoController.isCustomControlsEnabled
  }
}

Benutzerdefinierte Klickgesten

Benutzerdefinierte Klickgesten sind eine Funktion für native Anzeigen, mit der beim Wischen über eine Anzeige als Anzeigenklicks registriert werden. Sie ist für Apps konzipiert, die Wischgesten für die Navigation durch Inhalte verwenden. In diesem Leitfaden erfahren Sie, wie Sie benutzerdefinierte Klicks aktivieren. Gesten für Ihre nativen Anzeigen.

Rufen Sie NativeAdOptions.Builder.enableCustomClickGestureDirection() mit einem NativeAdOptions.SwipeGestureDirection und einem boolean auf, um anzugeben, ob Tippen als Klicks zugelassen werden sollen.

  • Benutzerdefinierte Klickgesten sind standardmäßig deaktiviert.

  • Wenn diese Option deaktiviert ist, unterstützt deine App das normale Klickverhalten.

  • Wenn diese Option aktiviert ist, unterstützt deine App benutzerdefinierte Wischgesten.

Im folgenden Beispiel wird eine benutzerdefinierte Wischgeste nach rechts und behält das normale Tabverhalten bei.

NativeAdOptions adOptions = new NativeAdOptions
    .Builder()
    .enableCustomClickGestureDirection(NativeAdOptions.SWIPE_GESTURE_DIRECTION_RIGHT,
            /* tapsAllowed= */ true)
    .build();

// The following sample ad unit ID has been enabled for custom click gestures
// and can be used for testing.
AdLoader.Builder builder = new AdLoader
    .Builder(this, 'ca-app-pub-3940256099942544/2247696110')
    .withNativeAdOptions(adOptions);

Auf Wischgesten-Ereignisse warten

Wenn ein Klick mit einer Wischgeste erfasst wird, ruft das Google Mobile Ads SDK die onAdSwipeGestureClicked()-Methode für AdListener zusätzlich zum vorhandenen onAdClicked()-Methode.

AdLoader adLoader = builder
    .withAdListener(
      new AdListener() {
        // Called when a swipe gesture click is recorded.
        @Override
        public void onAdSwipeGestureClicked() {
          Log.d(TAG, "A swipe gesture click has occurred.")
        }

        // Called when a swipe gesture click or a tap click is recorded, as
        // configured in NativeAdOptions.
        @Override
        public void onAdClicked() {
          Log.d(TAG, "A swipe gesture click or a tap click has occurred.")
        }
      })
    .build();

Vermittlung

Benutzerdefinierte Klickgesten funktionieren nur bei nativen Anzeigen, die mit dem Google Mobile Ads SDK gerendert werden. Anzeigenquellen, die Drittanbieter-SDKs für nicht auf die Einstellung für benutzerdefinierte Klickrouten reagieren.