WebView API for Ads を統合する

広告用のウェブビュー API を使用すると、 WebViewは、 広告主をスパムから保護するパブリッシャーの存在です。 アプリ ID やアプリのバージョンなど、これらのアプリのシグナルはレポートを有効にするのに役立ちます。 およびアプリ内ブラウザ広告枠をターゲットに設定する 本来ならアプリのトラフィックでのみ利用可能な ユースケースに対応できます

仕組み

Google Mobile Ads SDK との通信は、広告の応答としてのみ行われます。 イベントがトリガーされます。

SDK は登録された WebView これらの広告イベントをリッスンします。より良い結果を生み出すために その仕組みを理解するために、Google Cloud のソースコード 表示されます。

前提条件

  • Google Mobile Ads SDK バージョン 20.6.0 以降のバージョンが必要です。
  • Android API レベル 21 以降。

  • AndroidManifest.xml ファイルに次の <meta-data> タグを追加します。 APPLICATION_ID のチェックをバイパスします。この手順をスキップし、 <meta-data> タグを提供すると、Google Mobile Ads SDK は IllegalStateException

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

ウェブビューを登録する

発信 registerWebView() アプリケーションの JavaScript ハンドラとの接続を確立し、 各インスタンス内で AdSense コードまたは Google パブリッシャー タグを利用可能 WebView この できるだけ早い段階で MainActivityonCreate() メソッド。

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

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)

    // Enable third-party cookies.
    CookieManager.getInstance().setAcceptThirdPartyCookies(webView, true)
    // Enable JavaScript in the WebView.
    webView.settings.javaScriptEnabled = true
    // Enable DOM storage in the WebView.
    webView.settings.domStorageEnabled = true
    // Enable videos to play automatically.
    webView.settings.mediaPlaybackRequiresUserGesture = false

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

統合をテストする

独自の URL を使用する前に、次の URL を読み込んでテストすることをおすすめします。 説明します。

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

次の場合、テスト URL には統合が成功したことを示す緑色のステータスバーが表示されます。 次の条件が適用されます。

  • WebView Google Mobile Ads SDK に接続

次のステップ

  • WebViewで同意を取得します。Google Cloud 向けのウェブビュー API モバイルアプリのコンテキストで収集された同意は、 IAB TCF v2.0 または IAB CCPA をウェブビューのタグに追加します。もし関心があるなら 両方の所有者として単一の同意フローを実装する場合 WebView 対応するウェブ コンテンツを 場合は、同意管理プラットフォームを使用して、 説明します。 WebView