Men-debug WebView dari jarak jauh

Debug WebViews di aplikasi Android native Anda menggunakan Chrome Developer Tools.

Di Android 4.4 (KitKat) atau yang lebih baru, gunakan DevTools untuk men-debug konten WebView dalam aplikasi Android native.

Ringkasan

  • Aktifkan proses debug WebView di aplikasi Android asli Anda; debug WebView di Chrome DevTools.
  • Akses daftar WebView yang mendukung debug melalui chrome://inspect.
  • Men-debug WebView sama dengan men-debug halaman web melalui proses debug jarak jauh.

Mengonfigurasi WebView untuk proses debug

Proses debug WebView harus diaktifkan dari dalam aplikasi Anda. Untuk mengaktifkan proses debug WebView, panggil metode statis setWebContentsDebuggingEnabled di class WebView.

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
    WebView.setWebContentsDebuggingEnabled(true);
}

Setelan ini berlaku untuk semua WebView aplikasi.

Tips: Proses debug WebView tidak terpengaruh oleh status tanda debuggable dalam manifes aplikasi. Jika Anda ingin mengaktifkan proses debug WebView hanya saat debuggable adalah true, uji flag saat runtime.

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
    if (0 != (getApplicationInfo().flags & ApplicationInfo.FLAG_DEBUGGABLE))
    { WebView.setWebContentsDebuggingEnabled(true); }
}

Membuka WebView di DevTools

Halaman chrome://inspect menampilkan daftar WebViews yang mendukung debug di perangkat Anda.

Untuk memulai proses debug, klik inspect di bawah WebView yang ingin Anda debug. Gunakan DevTools seperti yang Anda lakukan untuk tab browser jarak jauh.

Memeriksa elemen di WebView

Grafik abu-abu yang tercantum dengan WebView mewakili ukuran dan posisinya relatif terhadap layar perangkat. Jika WebView Anda telah disetel dengan judul, judulnya juga akan dicantumkan.

Pemecahan masalah

Tidak dapat melihat WebView di halaman chrome://inspect?

  • Pastikan proses debug WebView diaktifkan untuk aplikasi Anda.
  • Di perangkat, buka aplikasi dengan WebView yang ingin Anda debug. Kemudian, muat ulang halaman chrome://inspect.