WebView API für Anzeigen integrieren

Mit den WebView APIs für Anzeigen werden App-Signale für die Tags in Ihrem WebView verfügbar gemacht. So lässt sich die Monetarisierung für die Publisher, die die Inhalte zur Verfügung gestellt haben, verbessern und Werbetreibende vor Spam schützen.

Funktionsweise

Die Kommunikation mit dem Google Mobile Ads SDK erfolgt nur als Reaktion auf Anzeigenereignisse, die durch Folgendes ausgelöst werden:

Das SDK fügt dem registrierten WebView Nachrichten-Handler hinzu, um auf diese Anzeigenereignisse zu warten. Im Quellcode der Testseite finden Sie weitere Informationen dazu.

Vorbereitung

  • Google Mobile Ads SDK Version 20.6.0 oder höher
  • Android API-Level 21 oder höher

  • Fügen Sie der Datei AndroidManifest.xml das folgende <meta-data>-Tag hinzu, um die Prüfung für die APPLICATION_ID zu umgehen. Wenn Sie diesen Schritt auslassen und das <meta-data>-Tag nicht angeben, löst das Google Mobile Ads SDK beim Starten der App eine IllegalStateException aus.

    <!-- Bypass APPLICATION_ID check for web view APIs for ads -->
     <meta-data
         android:name="com.google.android.gms.ads.INTEGRATION_MANAGER"
         android:value="webview"/>
    

WebView registrieren

Rufe registerWebView() im Hauptthread auf, um eine Verbindung zu den JavaScript-Handlern im AdSense-Code oder Google Publisher-Tag innerhalb jeder WebView-Instanz herzustellen. Dies sollte so früh wie möglich geschehen, z. B. in der onCreate()-Methode deiner MainActivity.

Kotlin

import android.webkit.CookieManager
import android.webkit.WebView
import com.google.android.gms.ads.MobileAds

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

    // Register the web view.
    MobileAds.registerWebView(webView)
  }
}

Java

import android.webkit.CookieManager;
import android.webkit.WebView;
import com.google.android.gms.ads.MobileAds;

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);

    // Register the web view.
    MobileAds.registerWebView(webView);
  }
}

Integration testen

Bevor du deine eigene URL verwendest, empfehlen wir dir, die folgende URL zu laden, um die Integration zu testen:

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

Wenn die folgenden Bedingungen erfüllt sind, werden für die Test-URL grüne Statusbalken für eine erfolgreiche Integration angezeigt:

  • WebView mit dem Google Mobile Ads SDK verbunden ist

Nächste Schritte

  • Holen Sie die Einwilligung in WebView ein. Die WebView APIs für Anzeigen leiten die Einwilligung, die im Kontext einer mobilen App mithilfe der Compliance-Frameworks IAB TCF 2.0 oder IAB CCPA erfasst wurde, nicht an die Tags in Ihren WebViews weiter. Wenn Sie als Inhaber sowohl der WebView als auch der entsprechenden monetarisierten Webinhalte einen einzigen Einwilligungsvorgang implementieren möchten, arbeiten Sie mit Ihrer Plattform zur Einwilligungsverwaltung zusammen, um die Einwilligung im Kontext der WebView einzuholen.