我的应用是Android原生,html5的组合。直到上周,我才能看到来自WebView内部运行的本机代码和javascript代码的日志消息。但突然Logcat没有显示来自javascript的控制台消息,尽管它显示来自我的本机代码的日志消息。 有什么想法吗?
提前致谢。 Venkat
答案 0 :(得分:20)
您可以尝试通过创建自定义WebChromeClient来向WebView添加控制台消息处理程序:
class MyWebChromeClient extends WebChromeClient
{
@Override
public boolean onConsoleMessage(ConsoleMessage cm)
{
Log.d("CONTENT", String.format("%s @ %d: %s",
cm.message(), cm.lineNumber(), cm.sourceId()));
return true;
}
}
然后附上它:
someWebView.setWebChromeClient(new MyWebChromeClient());
答案 1 :(得分:15)
仅适用于android native& html5(不是phonegap / cordova)这包括如何在logcat中显示控制台消息。 http://developer.android.com/guide/webapps/debugging.html#WebView
另一种方法是使用jsconsole.com。 http://jsconsole.com/remote-debugging.html
涵盖了远程调试答案 2 :(得分:1)
我正在运行PhoneGap 2.9.1。
在做了一些搜索之后,我希望Console.log能够在Eclipse LogCat的标签' WebView '下面显示,所以我不确定它是工作
经过一番游戏后,我发现console.log()确实在LogCat的标签' CordovaLog '下显示。
答案 3 :(得分:1)
答案 4 :(得分:0)
如果您想在浏览器中测试您的cordova应用程序,就像测试任何其他网络应用程序一样。
您可以使用:cordova serve
。这将在本地运行混合应用程序。您可以打开URL http://localhost:8000,并可以检查控制台日志的元素。您可以更改DOM元素CSS。