Tích hợp WebView API for Ads (API WebView cho quảng cáo)

API WebView cho quảng cáo cung cấp tín hiệu ứng dụng cho các thẻ trong WebView của bạn, giúp cải thiện khả năng kiếm tiền cho những nhà xuất bản đã cung cấp nội dung và bảo vệ nhà quảng cáo khỏi nội dung rác.

Cách hoạt động

Việc giao tiếp với GMA Next-Gen SDK chỉ diễn ra để phản hồi các sự kiện quảng cáo do bất kỳ thành phần nào sau đây kích hoạt:

SDK này thêm trình xử lý thông báo vào WebView đã đăng ký để theo dõi các sự kiện quảng cáo này. Để hiểu rõ hơn về cách hoạt động của SDK này, hãy xem mã nguồn của trang thử nghiệm.

Điều kiện tiên quyết

Truyền mã ứng dụng đến SDK

Nếu đã có mã ứng dụng AdMob, hãy khởi chạy GMA Next-Gen SDK bằng mã ứng dụng hiện có.

Nếu chưa có mã ứng dụng AdMob, hãy truyền vào InitializationConfig.WEBVIEW_APIS_FOR_ADS_APPLICATION_ID làm mã ứng dụng khi bạn khởi chạy GMA Next-Gen SDK.

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

Đăng ký WebView

Gọi registerWebView() trên luồng chính để thiết lập kết nối với các trình xử lý JavaScript trong mã AdSense hoặc Thẻ nhà xuất bản của Google trong mỗi thực thể WebView. Bạn nên thực hiện việc này càng sớm càng tốt, chẳng hạn như trong onCreate() phương thức của 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);
  }
}

Kiểm tra quá trình tích hợp

Trước khi sử dụng URL của riêng mình, bạn nên tải URL sau đây để kiểm tra quá trình tích hợp:

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

URL thử nghiệm hiển thị các thanh trạng thái màu xanh lục cho quá trình tích hợp thành công nếu đáp ứng các điều kiện sau:

  • WebView được kết nối với GMA Next-Gen SDK

Các bước tiếp theo

  • Thu thập sự đồng ý trong WebView. API WebView cho quảng cáo không truyền sự đồng ý được thu thập trong bối cảnh ứng dụng di động bằng cách sử dụng TCF phiên bản 2.0 của IAB hoặc các khuôn khổ tuân thủ CCPA của IAB đến các thẻ trong WebView của bạn. Nếu bạn muốn triển khai một quy trình thu thập sự đồng ý duy nhất với tư cách là chủ sở hữu của cả WebView và nội dung web tương ứng đang được kiếm tiền, hãy làm việc với nền tảng quản lý sự đồng ý để thu thập sự đồng ý trong bối cảnh WebView.