WebView einrichten

Wenn in Ihrer App Webinhalte über WebView angezeigt werden, sollten Sie die Funktion so konfigurieren, dass Inhalte optimal mit Anzeigen monetarisiert werden können.

In diesem Leitfaden erfahren Sie, wie Sie Informationen zur Konfiguration eines WebView-Objekts angeben.

Drittanbieter-Cookies aktivieren

Wenn Sie die Anzeigennutzung für Ihre Nutzer verbessern und die Chrome-Cookie-Richtlinie einhalten möchten, aktivieren Sie Drittanbieter-Cookies in Ihrer WebView-Instanz.

Java

CookieManager.getInstance().setAcceptThirdPartyCookies(webView, true);

Kotlin

CookieManager.getInstance().setAcceptThirdPartyCookies(webView, true)

Webeinstellungen

Die WebView-Standardeinstellungen sind nicht für Anzeigen optimiert. Verwenden Sie die Methode WebSettings APIs zum Konfigurieren von WebView für:

  • JavaScript
  • Zugriff auf lokalen Speicher
  • Automatische Videowiedergabe

Java

import android.webkit.CookieManager;
import android.webkit.WebView;

public class MainActivity extends AppCompatActivity {
  private WebView webView;

  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    webView = findViewById(R.id.webview);

    // Let the web view accept third-party cookies.
    CookieManager.getInstance().setAcceptThirdPartyCookies(webView, true);
    // Let the web view use JavaScript.
    webView.getSettings().setJavaScriptEnabled(true);
    // Let the web view access local storage.
    webView.getSettings().setDomStorageEnabled(true);
    // Let HTML videos play automatically.
    webView.getSettings().setMediaPlaybackRequiresUserGesture(false);
  }
}

Kotlin

import android.webkit.CookieManager
import android.webkit.WebView

class MainActivity : AppCompatActivity() {
  lateinit var webView: WebView

  override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)
    webView = findViewById(R.id.webview)

    // Let the web view accept third-party cookies.
    CookieManager.getInstance().setAcceptThirdPartyCookies(webView, true)
    // Let the web view use JavaScript.
    webView.settings.javaScriptEnabled = true
    // Let the web view access local storage.
    webView.settings.domStorageEnabled = true
    // Let HTML videos play automatically.
    webView.settings.mediaPlaybackRequiresUserGesture = false
  }
}

Webview-Inhalte laden

Cookies und Seiten-URLs sind wichtig für die Monetarisierung von Web-Ansichten und funktionieren nur wie erwartet, wenn loadUrl() mit einer netzwerkbasierten URL verwendet wird. Für eine optimierte WebView-Leistung sollten Sie Webinhalte direkt über netzwerkbasierte URLs laden. Verwenden Sie WebViewAssetLoader nicht, laden Sie keine Assets vom Gerät und generieren Sie keine Webinhalte dynamisch.

Java

import android.webkit.CookieManager;
import android.webkit.WebView;

public class MainActivity extends AppCompatActivity {
  private WebView webView;

  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    webView = findViewById(R.id.webview);

    // Let the web view accept third-party cookies.
    CookieManager.getInstance().setAcceptThirdPartyCookies(webView, true);
    // Let the web view use JavaScript.
    webView.getSettings().setJavaScriptEnabled(true);
    // Let the web view access local storage.
    webView.getSettings().setDomStorageEnabled(true);
    // Let HTML videos play automatically.
    webView.getSettings().setMediaPlaybackRequiresUserGesture(false);

    // Load the URL for optimized web view performance.
    webView.loadUrl("https://webview-api-for-ads-test.glitch.me");
  }
}

Kotlin

import android.webkit.CookieManager
import android.webkit.WebView

class MainActivity : AppCompatActivity() {
  lateinit var webView: WebView

  override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)
    webView = findViewById(R.id.webview)

    // Let the web view accept third-party cookies.
    CookieManager.getInstance().setAcceptThirdPartyCookies(webView, true)
    // Let the web view use JavaScript.
    webView.settings.javaScriptEnabled = true
    // Let the web view access local storage.
    webView.settings.domStorageEnabled = true
    // Let HTML videos play automatically.
    webView.settings.mediaPlaybackRequiresUserGesture = false

    // Load the URL for optimized web view performance.
    webView.loadUrl("https://webview-api-for-ads-test.glitch.me")
  }
}

Webansicht testen

Während der App-Entwicklung empfehlen wir, diese Test-URL zu laden:

https://webview-api-for-ads-test.glitch.me#webview-settings-tests

Prüfen Sie, ob diese Einstellungen die gewünschte Wirkung auf Anzeigen haben. Die Test-URL erfüllt die Erfolgskriterien für eine vollständige Integration, wenn Folgendes zutrifft:

Einstellungen für die Webansicht

  • Drittanbieter-Cookies funktionieren
  • Funktionsweise von eigenen Cookies
  • JavaScript aktiviert
  • DOM-Speicher aktiviert

Videoanzeige

  • Die Videoanzeige wird Inline abgespielt und nicht im Vollbildmodus im integrierten Player geöffnet.
  • Die Videoanzeige wird automatisch abgespielt, ohne dass auf die Wiedergabeschaltfläche geklickt werden muss.
  • Die Videoanzeige kann wiederholt werden.

Ersetzen Sie nach Abschluss des Tests die Test-URL durch die URL, die in der Webansicht geladen werden soll.