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.

Funktionsweise

Die Kommunikation mit dem GMA Next Gen SDK erfolgt nur als Reaktion auf Werbeereignisse, die durch eine der folgenden Aktionen 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 AdMob-App-ID haben, initialisieren Sie das GMA Next Gen SDK mit Ihrer vorhandenen App-ID.

Wenn Sie keine AdMob-Anwendungs-ID haben, übergeben Sie InitializationConfig.WEBVIEW_APIS_FOR_ADS_APPLICATION_ID als Anwendungs-ID, wenn Sie das GMA Next Gen SDK initialisieren.

Kotlin

MobileAds.initialize(
    this@MainActivity,
    // Use this application ID to initialize the GMA Next Gen SDK if
    // you don't have an AdMob 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 GMA Next Gen SDK if
    // you don't have an AdMob 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 ist mit dem GMA Next Gen SDK 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.