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 Seitenverhältnis von Medien können Sie eine Einstellung für das Seitenverhältnis von Creatives festlegen.

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

  • Wenn das Seitenverhältnis nicht festgelegt ist, kann die zurückgegebene Anzeige ein beliebiges Seitenverhä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, '/21775744923/example/native')
                              .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.

NativeAdOptions.Builder.setReturnUrlsForImageAssets() anrufen mit einem boolean-Wert.
  • 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 stattdessen nur den URI aus. Sie können die tatsächlichen Bilder dann nach Belieben herunterladen.

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, '/21775744923/example/native')
                              .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, zeigt Ihre App an, dass alle Bilder angezeigt werden können für alle Assets mit mehr als einem.

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, '/21775744923/example/native')
                              .withNativeAdOptions(nativeAdOptions)
                              .build();

Datenschutzinfo-Placements

Einstellungen für die Position von AdChoices

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 diese Einstellung nicht festgelegt ist, wird das Datenschutzinfo-Symbol oben rechts platziert.

  • 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, '/21775744923/example/native')
                              .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 Einstellung kannst du festlegen, ob der Ton eines Videos zu Beginn stummgeschaltet oder aktiviert werden soll.

Rufen Sie VideoOptions.Builder.setStartMuted() mit einem boolean-Wert auf.
  • 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, fordert Ihre App an, dass der Ton beim Start des Videos stummgeschaltet sein soll.

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, '/21775744923/example/native')
                              .withNativeAdOptions(adOptions).build();

Benutzerdefinierte Wiedergabesteuerung

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

VideoOptions.Builder.setCustomControlsRequested() anrufen mit einem boolean-Wert.
  • Die benutzerdefinierte Wiedergabesteuerung ist standardmäßig deaktiviert.

  • Wenn diese Option deaktiviert ist, werden in deinem Video Steuerelemente für SDK-gerenderte Eingaben 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, '/21775744923/example/native')
                              .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 Klick-Gesten

Benutzerdefinierte Klickgesten sind eine Funktion für native Anzeigen, mit der beim Wischen über eine Anzeige als Anzeigenklicks registriert werden. Sie funktioniert mit Apps, die die Wischbewegung nutzen Gesten für die Inhaltsnavigation verwenden. In diesem Leitfaden erfahren Sie, wie Sie benutzerdefinierte Klicks aktivieren. Gesten für Ihre nativen Anzeigen.

NativeAdOptions.Builder.enableCustomClickGestureDirection() anrufen mit NativeAdOptions.SwipeGestureDirection und einen boolean, um anzugeben, ob Tippen als Klicks zugelassen werden soll.

  • 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, '/21775744923/example/native')
    .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 Klickbewegungen funktionieren nur bei nativen Anzeigen, die von Google Mobile Das Ads SDK wird gerendert. Anzeigenquellen, die Drittanbieter-SDKs für nicht auf die Einstellung für benutzerdefinierte Klickrouten reagieren.