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

API chế độ xem web dành cho quảng cáo cung cấp tín hiệu ứng dụng cho các thẻ trong WebViewcủ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 thư rác.

Cách hoạt động

Hoạt động giao tiếp với SDK quảng cáo trên thiết bị di động của Google chỉ diễn ra để phản hồi các sự kiện quảng cáo được kích hoạt bởi bất kỳ mục nào sau đây:

SDK 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 quy trình này, hãy xem mã nguồn của trang kiểm thử.

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

  • SDK Quảng cáo của Google trên thiết bị di động phiên bản 20.6.0 trở lên.
  • API Android cấp 21 trở lên.

  • Thêm thẻ <meta-data> sau vào tệp AndroidManifest.xml để bỏ qua việc kiểm tra APPLICATION_ID. Nếu bạn bỏ lỡ bước này và không cung cấp thẻ <meta-data>, SDK quảng cáo trên thiết bị di động của Google sẽ gửi IllegalStateException khi khởi động ứng dụng.

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

Đăng ký chế độ xem trên web

Gọi registerWebView() trên chuỗi 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 từng WebView phiên bản. 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 phương thức Phương thức onCreate() của MainActivity.

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

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 để kiểm tra quá trình tích hợp:

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

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

  • WebView đã kết nối với SDK quảng cáo trên thiết bị di động của Google

Các bước tiếp theo