介绍
如何在Android应用中利用WebView对控制台错误信息进行监听?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
根据需求,我们要拿到仅有的错误信息,并将错误信息进行上报。查询了下安卓WebView的API发现了WebChromeClient这个方法可以满足要求:
@Override ,public boolean  onConsoleMessage (ConsoleMessage consoleMessage), {//才能获取对数的级别 switch 才能;(consoleMessage.messageLevel ()) { ,,,,case 错误://将错误信息上报到服务端 ,,,,,LogUtil.logE (“webview==? consoleMessage.message() +“,水平=?,consoleMessage.messageLevel ()); ,,,,,,LogUtil.uploadH5Error (consoleMessage.message ()); ,,,,,,休息; ,,} return 才能super.onConsoleMessage (consoleMessage); }
这个方法的作用就是<代码> *报告一个JavaScript控制台消息到主机应用程序。> 代码,就是说这个方法可以拦截JavaScript控制台的信息,就跟在浏览器里查看一样,对于Android来说,Android在工作室的logcat里面就就可以查看,比如我让编辑随便弄个定义错误,然后重写日志了js的方法logcat输出如下:
从输出信息我们可以看到可以捕获到行号,错误信息,错误的URL。这些信息都在ConsoleMessage对象里。其代码如下:
可以看出ConsoleMessage里面也有日志级别,我们只需要将错误级别的日志上报即可。
看完上述内容,你们掌握如何在Android应用中利用WebView对控制台错误信息进行监听的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!