Android中獲取WebView加載的html中console.log輸出的內容


場景

Android中使用WebView加載本地html並支持運行JS代碼和支持縮放:

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/118637633

使用WebView加載html顯示時,在js代碼中通過console.log()輸出的日志內容,怎樣在AndroidStudio中

logcat調試時獲取到。

在上面的方式下可以直接捕獲到js中console.log()輸出的內容。

這是因為設置為ChromeClient並且開啟了js支持,如果不設置和開啟的話是沒法捕獲console.log的輸出內容的。

 

注:

博客:
https://blog.csdn.net/badao_liumang_qizhi
關注公眾號
霸道的程序猿
獲取編程相關電子書、教程推送與免費下載。

實現

1、使用常規的webview加載顯示html時,直接在js中console.log是不輸出的。

        //獲取webview
        webView = findViewById(R.id.webview);
        webView.loadUrl("file:///android_asset/logDemo.html");

2、設置為ChromeClient並且開啟js支持

        //設置為ChromeClinet 才能執行js代碼
        WebChromeClient webChromeClient = new WebChromeClient();
        webView.setWebChromeClient(webChromeClient);
        //設置開啟js支持
        webView.getSettings().setJavaScriptEnabled(true);

3、添加以上代碼之后在logcat中就可以捕獲到console.log的日志輸出了

 

 4、如果還是不行,可以考慮將console.log替換為在js中調用安卓的方法,在安卓方法中進行輸出

Android和JS之間互相調用方法並傳遞參數:

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/118653456


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM