console
JavaScript API'lerini kullanarak JavaScript'inizdeki hataları ayıklayabilir ve çıkış mesajlarını Logcat'te görüntüleyebilirsiniz. Firebug veya Web Inspector ile web sayfalarında hata ayıklama hakkında bilgi sahibiyseniz console
(console.log()
gibi) aracını kullanmaya aşinasınızdır. Android'in WebKit çerçevesi, aynı API'lerin çoğunu destekler. Böylece WebView
'te hata ayıklarken web sayfanızdan günlükler alabilirsiniz. Bu konuda, hata ayıklama için konsol API'lerinin nasıl kullanılacağı açıklanmaktadır.
Web Görünümü'nde konsol API'lerini kullanma
Konsol API'leri, WebView
ürününde hata ayıklarken de desteklenir. Konsol mesajlarının Logcat'te görünmesi için onConsoleMessage()
yöntemini uygulayan bir WebChromeClient
sağlamanız gerekir. Ardından, setWebChromeClient()
ile WebChromeClient
özelliğini WebView
cihazınıza uygulayın.
Daha fazla bilgi için Webview
belgelerine göz atın.
Aşağıdaki örnekte, WebView
ürününde konsol API'lerinin nasıl kullanılacağı gösterilmektedir:
Kotlin
val myWebView: WebView = findViewById(R.id.webview) myWebView.webChromeClient = object : WebChromeClient() { override fun onConsoleMessage(message: ConsoleMessage): Boolean { Log.d("MyApplication", "${message.message()} -- From line " + "${message.lineNumber()} of ${message.sourceId()}") return true } }
Java
WebView myWebView = findViewById(R.id.webview); myWebView.setWebChromeClient(new WebChromeClient() { @Override public boolean onConsoleMessage(ConsoleMessage consoleMessage) { Log.d("MyApplication", consoleMessage.message() + " -- From line " + consoleMessage.lineNumber() + " of " + consoleMessage.sourceId()); return true; } });
ConsoleMessage
, teslim edilen konsol mesajının türünü belirten bir MessageLevel
nesnesi de içerir. Mesajın önem derecesini belirlemek için mesaj düzeyini messageLevel()
ile sorgulayabilir, ardından uygun Log
yöntemini kullanabilir ya da diğer uygun işlemleri yapabilirsiniz.
İster onConsoleMessage(String, int, String)
ister onConsoleMessage(ConsoleMessage)
kullanın, web sayfanızda bir konsol yöntemi yürüttüğünüzde Android hatayı bildirebilmeniz için uygun onConsoleMessage()
yöntemini çağırır. Örneğin, yukarıdaki örnek kodla, aşağıdaki gibi bir Logcat mesajı yazdırılır:
Hello World -- From line 82 of http://www.example.com/hello.html
Hata ayıklamayla ilgili ek kaynaklar aşağıda verilmiştir:
Deneysel web özelliklerini test edin
Google Chrome'un chrome://flags
sayfasına benzer şekilde, deneysel web özelliklerini WebView
ürününde de test edebilirsiniz.
Bunun için aşağıdaki adımları uygulayın:
Yayın öncesi
WebView
kanallarından (beta, geliştirici veya canary){: .external} birini yükleyin.Test cihazınızdaki
WebView
kanalını, yayın öncesi yüklü yüklü kanala değiştirin.Web Görünümü Geliştirici Araçları başlatıcısını tıklayın:
Geliştirici Araçları'ndan İşaretler'i tıklayın ve etkinleştirmek veya devre dışı bırakmak istediğiniz deneysel özellikleri arayın. Değişiklik, cihazdaki tüm
WebView
örnekleri için geçerli olur.Yeni özellikleri test etmeye başlamak için uygulamanızı durdurup yeniden başlatın.
İşaretleri açma/kapatma hakkında daha fazla bilgi için WebView
Geliştirici Araçları belgelerini inceleyin.