Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/188.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从同一应用程序调试Android WebView中的Javascript_Javascript_Android_Debugging - Fatal编程技术网

从同一应用程序调试Android WebView中的Javascript

从同一应用程序调试Android WebView中的Javascript,javascript,android,debugging,Javascript,Android,Debugging,我正在试验一个用于WebView的简单Javascript调试器。我想调试/控制/检查一些Javascript代码是如何在我的WebView中执行的 除了使用WebChromeClient接收控制台消息之外,我还没有找到其他解决方案 由于我可以访问Javascript代码,我可以在每一行之前添加插入代码:一个控制台.log调用,并带有一条特殊消息(例如“调试行3”),告诉我哪些行已经执行 这是非常基本的,所以我想知道是否有更好的解决办法。如果我可以使用该语句来真正控制执行流,那就太好了。如果我想

我正在试验一个用于
WebView
的简单
Javascript
调试器。我想调试/控制/检查一些
Javascript
代码是如何在我的
WebView
中执行的

除了使用
WebChromeClient
接收控制台消息之外,我还没有找到其他解决方案

由于我可以访问
Javascript
代码,我可以在每一行之前添加插入代码:一个
控制台.log
调用,并带有一条特殊消息(例如
“调试行3”
),告诉我哪些行已经执行


这是非常基本的,所以我想知道是否有更好的解决办法。如果我可以使用该语句来真正控制执行流,那就太好了。

如果我想直接在移动浏览器上控制台.log()任何东西,那么我一直在做这件事,这样调试就可以在实际设备上完成,而不是在emulator或类似设备上完成

我制作了JS调试器插件,它的功能如下:

  • 它创建一个绝对定位的HTML元素,该元素位于内容顶部,是半透明的
  • 我制作了JS逻辑,它实际上模拟了console.log()的功能,并在前面提到的HTML元素中打印出所有需要的信息
  • 一旦插件完成,我就简单地使用
    MoibileDebugger.log('what ever')
    而不是
    console.log('what ever')
我的代码还没有公开发布,但很快就会发布,所以任何人都可以从中受益。。。
在任何情况下,任何精通JS的人都可以很快制作此插件。

您是在手机上调试还是在通过USB连接到手机的台式机上调试?你打算开发一个调试API还是仅仅使用现有的Chrome工具集进行调试?我正试图从创建web视图的android应用程序进行调试。我没有考虑过一个完整的调试api,而是一些更简单的(但有点)。谢谢。那么你使用的是Javascript界面?我想看看你到底在干什么。谢谢