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 verbessern, die die Inhalte bereitgestellt haben, und Werbetreibende werden vor Spam geschützt. Diese App-Signale, z. B. App-ID und App-Version, ermöglichen die Aktivierung von Berichten und Targeting auf In-App-Browser-Inventar, die ansonsten nur für App-Traffic verfügbar sind.

Funktionsweise

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

Das SDK fügt den registrierten WebView-Objekten Message-Handler hinzu, um auf diese Anzeigenereignisse zu warten. Um besser nachvollziehen zu können, wie das funktioniert, können Sie sich den Quellcode der Testseite ansehen.

Vorbereitung

App-ID an das SDK übergeben

Wenn Sie bereits eine Ad Manager-Anwendungs-ID haben, initialisieren Sie das Google Mobile Ads SDK (Beta) mit Ihrer vorhandenen Anwendungs-ID.

Wenn Sie keine Ad Manager-Anwendungs-ID haben, übergeben Sie InitializationConfig.WEBVIEW_APIS_FOR_ADS_APPLICATION_ID als Anwendungs-ID, wenn Sie das Google Mobile Ads SDK (Beta) initialisieren.

Kotlin

MobileAds.initialize(
    this@MainActivity,
    // Use this application ID to initialize the Google Mobile Ads SDK (beta) if
    // you don't have an Ad Manager application ID.
    InitializationConfig.Builder(InitializationConfig.WEBVIEW_APIS_FOR_ADS_APPLICATION_ID)
        .build(),
  ) {
    // Adapter initialization complete.
  }

Java

MobileAds.initialize(
    this,
    // Use this application ID to initialize the Google Mobile Ads SDK (beta) if
    // you don't have an Ad Manager application ID.
    new InitializationConfig.Builder(InitializationConfig.WEBVIEW_APIS_FOR_ADS_APPLICATION_ID)
        .build(),
        initializationStatus -> {
          // Adapter initialization is complete.
          });

WebView registrieren

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

Kotlin

import android.webkit.CookieManager
import android.webkit.WebView
import com.google.android.libraries.ads.mobile.sdk.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.libraries.ads.mobile.sdk.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 Sie Ihre eigene URL verwenden, empfehlen wir, die folgende URL zu laden, um die Integration zu testen:

https://google.github.io/webview-ads/test/#api-for-ads-tests

Die Test-URL zeigt grüne Statusbalken für eine erfolgreiche Integration an, wenn die folgenden Bedingungen erfüllt sind:

  • WebView mit dem Google Mobile Ads SDK (Beta) verbunden

Nächste Schritte

  • Einwilligung in WebView einholen Über die WebView APIs für Anzeigen werden Einwilligungen, die im Kontext der mobilen App mithilfe der Compliance-Frameworks IAB TCF 2.0 oder IAB CCPA erfasst wurden, nicht an die Tags in Ihren WebViews weitergegeben. Wenn Sie als Inhaber sowohl der WebView als auch der entsprechenden Web-Inhalte, die monetarisiert werden, einen einzelnen Einwilligungsablauf implementieren möchten, arbeiten Sie mit Ihrer Consent Management Platform zusammen, um die Einwilligung im Kontext der WebView einzuholen.