WebView Geliştirici Araçları Uygulaması'nı kullanarak hata ayıklama

WebView DevTools uygulaması, sistem WebView bileşeninin kendisini yönetmek ve hatalarını ayıklamak için cihazda kullanılan bir yardımcı programdır. Bu araç, geliştirme makinenizde çalışan ve WebView örneğinde çalışan canlı web içeriğinde (HTML, CSS ve JavaScript) uzaktan hata ayıklamanıza olanak tanıyan Chrome Geliştirici Araçları'ndan ayrıdır.

WebView DevTools, WebView sistem bileşeniyle birlikte cihazınıza otomatik olarak yüklenen bir yardımcı uygulamadır. Uygulama dört alana ayrılmıştır:

  • Ana Sayfa: Sürüm bilgilerini görüntüleyin ve varsayılan WebView'i yayın öncesi kanal sürümüne geçirin.
  • Kilitlenmeler: WebView kilitlenme raporlarını listeleyin ve yükleyin.
  • İşaretler: WebView'ın davranışını değiştirmek için geliştirici işaretleri ayarlayın.
  • Ağ günlükleri: WebView'ın düşük düzeyli ağ günlüklerini listeleyin ve paylaşın.

WebView Geliştirici Araçları'nı çalıştırma

Geliştirici Modu'nun etkinleştirildiği Android 16 veya daha yeni sürümlerin yüklü olduğu cihazlarda Ayarlar > Sistem > Geliştirici seçenekleri > WebView DevTools'a giderek WebView DevTools'u başlatabilirsiniz.

Tüm yeni Android sürümlerinde, bir adb komutu kullanarak WebView Geliştirici Araçları'nı başlatabilirsiniz:

adb shell am start -a "com.android.webview.SHOW_DEV_UI"

Alternatif olarak, WebView'ın Beta, Yeni Geliştirilenler veya Canary gibi yayın öncesi bir kanalını yüklerseniz WebView DevTools başlatıcı simgesini kullanabilirsiniz.

WebView Geliştirici Araçları başlatıcı simgesi.
Şekil 1. Cihaza yüklenen uygulama için WebView DevTools simgesi.

WebView DevTools'u ilk kez çalıştırdığınızda, etkinleştirdiğiniz geliştirici işaretlerini listeleyen kalıcı bir bildirim göstermek için bildirim izni istenir.

Ön sürüm kanalına geçme

En yeni WebView özellikleri ve hata düzeltmeleri, ilk olarak yayın öncesi kanallarda kullanıma sunulur. WebView Geliştirici Araçları'nı kullanarak cihazınızın WebView sağlayıcısını değiştirerek uygulamanızı bu değişikliklere karşı test edebilirsiniz. Yayın öncesi kanallarda test yapmak, uygulamanızın kullanıcılara sunulmadan önce yaklaşan WebView sürümleriyle uyumlu olmasını sağlar.

  1. Kararlılık ve en son değişikliklere erişim arasında tercih ettiğiniz dengeye bağlı olarak WebView'ın Beta, Dev veya Canary sürümünü yükleyin.
  2. WebView Geliştirici Araçları uygulamasını açıp Sağlayıcıyı Değiştir'e dokunun.
  3. Bu seçeneği görmüyorsanız sağ üst köşedeki üç nokta simgesine dokunup WebView Sağlayıcısını Değiştir'i seçin.

Daha fazla bilgi için WebView Beta, Dev veya Canary'yi deneme başlıklı makaleyi inceleyin.

WebView kanalları

WebView kanalları, Chrome sürüm kanallarına dayanır. Her kanal, kodun farklı bir kararlılık ve güncellik düzeyini temsil eder. Her WebView kanalının ne zaman kullanılacağına dair kısa bir özet aşağıda verilmiştir:

  • Canary: Günlük olarak güncellenir. Bu kanalda, Chromium kod tabanına birleştirilir birleştirilmez yeni özellikler ve hata düzeltmeleri de dahil olmak üzere en son değişiklikler yer alır. Web uygulamanızın, yakın zamanda birleştirilmiş bir değişiklikle WebView'da nasıl çalıştığını test etmek istiyorsanız bu kanalı kullanın. Ancak bu kanalın kararsız olabileceğini veya hatalar içerebileceğini unutmayın.

  • Yeni geliştirilenler: Haftada bir veya iki kez güncellenir. Bu kanal, Canary'den daha kararlıdır ancak yine de en yeni değişiklikleri içerir. Yeni özellikleri test etmek isteyen ancak Canary'ye kıyasla alakasız hatalar konusunda daha az risk almak isteyen geliştiriciler için en iyi seçenektir.

  • Beta: Yaklaşık olarak her hafta güncellenir. 4 haftada bir önemli güncelleme yapılır. Bu kanal, WebView'ın bir sonraki kararlı sürümündeki özelliklerin önizlemesini kararlı sürümden yaklaşık 4-6 hafta önce sunar. Uyumluluğu doğrulamak için web uygulamanızı WebView'un yakında yayınlanacak sürümüne karşı test etmek üzere bu aracı kullanın.

  • Kararlı: Ana sürümler için 4 haftada bir, acil hata düzeltmeleri için küçük sürümler 2-3 haftada bir güncellenir. Bu, WebView'ın tüm kullanıcılara sunulan üretim kanalıdır. Diğer kanallarda test edildiği için en kararlı kanaldır. Web uygulamanızı şu anda çoğu kullanıcının yaptığı gibi bir WebView'da deneyimlemek istiyorsanız (ör. bildirdikleri bir hatayı yeniden üretmek için) bu seçeneği kullanın.

Kullanıcı arayüzü kilitlenmesi

Uygulamanızı geliştirirken WebView'da kilitlenme sorunu yaşarsanız WebView DevTools'u kullanarak bu kilitlenmeleri listeleyebilir, yükleyebilir ve bunlarla ilgili hata raporları gönderebilirsiniz.

  1. Uygulamanız çöktükten sonra, kilitlenme raporunun oluşturulduğundan emin olmak için uygulamayı yeniden başlatın.
  2. WebView Geliştirici Araçları uygulamasını açıp Kilitlenmeler'e dokunun.

Daha fazla bilgi için Crash UI belgelerini inceleyin.

İşaretleme kullanıcı arayüzü

WebView DevTools uygulaması, cihazınızdaki tüm WebView'ların davranışını değiştirmek için çeşitli faydalı işaretler ayarlamanıza olanak tanır. Çoğu işaret yalnızca WebView'un geliştirilmesi için kullanılır ancak bazıları Android uygulama geliştiricileri için yararlıdır.

  • highlight-all-webviews: Üzerlerine sarı renkli bir ton ekleyerek WebView'ları tanımlayın.
  • net-log: WebView ağ etkinliğinin düşük düzeyde günlüğe kaydedilmesini sağlar.
  • webview-log-js-console-messages: JavaScript konsol günlüklerinin Logcat'te görünmesini sağlayın.
İşaretler kullanıcı arayüzünü gösteren WebView Geliştirici Araçları uygulaması.
Şekil 2. WebView DevTools uygulamasındaki Flags kullanıcı arayüzü.

Daha fazla bilgi için Flag UI belgelerine bakın.

Net günlükleri

Chrome Geliştirici Araçları'nı kullanarak WebView'daki sunucu bağlantısı sorunlarını çözemiyorsanız düşük düzeyli ağ günlüklerini yakalamak için WebView Geliştirici Araçları'nı kullanın.

  1. Uygulama kodunuzda WebView hata ayıklamayı etkinleştirin.
  2. WebView Geliştirici Araçları'nda Flags'i açın, net-log simgesini bulun ve etkinleştirin. İşaretin geçerli olması için uygulamanızı yeniden başlatın.
  3. Hata ayıklamak istediğiniz ağ davranışını tetikleyen işlemleri gerçekleştirin. Sorunu yeniden oluşturduktan sonra uygulamanızı kapatın.
  4. Ağ günlüğü dosyasını bulup paylaşmak için WebView Geliştirici Araçları'nın Ağ Günlükleri bölümünü açın.
  5. Düşük düzeyli ağ etkinliklerini, soket bilgilerini ve zamanlama ayrıntılarını incelemek için JSON günlük dosyasını, ağ günlüklerini görselleştirmeye yönelik bir online araç olan Netlog Görüntüleyici'ye yükleyebilirsiniz.

Daha fazla bilgi için WebView'da ağ hata ayıklama başlıklı makaleyi inceleyin.