-->

如何使用的WebView使Android应用的WebKit的远程调试/检查?(how to enab

2019-07-04 21:09发布

我需要检查在一个机器人应用JavaScript执行(web视图插件),而调试; 通过SDK&USB电缆和/或HTTP /的WebSockets; 从destop计算机(例如铬在桌面上运行)。

WebKit的来源包括DebuggerServer实现(platform_external_webkit \来源\ WebKit的\机器人\ WDS \ DebugServer.cpp)在CPP级别访问,并绑定如果标志WDS启用(在编译的时候?)

源\ WebKit的\机器人\ JNI \ WebCoreFrameBridge.cpp:#IF ENABLE(WDS)源\的WebKit \机器人\ JNI \ WebCoreFrameBridge.cpp:WDS ::服务器() - > ADDFRAME(帧);

对于服务器的默认端口是9999

消息来源表明,所有被(在.cpp的水平),以确保功能实现,但是我还没有发现任何参考使用实时调试在自动化WebKit的检查接口的Adroid设备JavaScript的水平搜索体验的网站。

1.-是本功能,以二进制形式,在实际的Android设备运行? (已的WebKit的Adroid的分布已建成未启用WDS标志?:-()

2:可以在远程调试功能启用从JavaScript或应用程序(在Java级别),例如/使用在应用程序启动?

3.-在情况下,可以使WebKit的检查/调试器的功能,如何使它可以从远程应用程序进行交互? (例如,从使用的WebSockets另一个JavaScript的应用程序,或者在桌面计算机上的镀铬)。

有些段落解释像力学https://developers.google.com/chrome-developer-tools/docs/remote-debugging#remote就好了!

由于事先的任何信息,或有关此主题的引用。 我认为重要的是能够在JavaScript的水平远程调试(在设备),使其的HTML5应用程序和快乐调试体验现代发展。

欢呼声,啤酒。

Answer 1:

对于机器人> = 4.4(KitKat)的

见有Android版Chrome远程调试

对于机器人<4.4(下版本)

使用非常优秀的开源工具: weinre 。 请参阅此视频的帮助来使用它。 如果你熟悉的呼噜声,那么你可以使用咕噜,weinre

快速浏览:

  1. 安装weinre使用NPM
  2. 执行配置在gruntfile。
  3. 运行weinre咕噜任务。
  4. 使用这个脚本注入weinre目标代码到您的网页。
  1. 打开HTTP://本地主机:8082在浏览器中,你会发现上面的脚本运行的设备。 您可以调试所有这些设备。

注意:如果你要调试的WebView /浏览器在您的移动设备,那么你需要与你的机器的IP运行weinre取代本地主机。 是的,所有的设备都应该在同一个网络上。



Answer 2:

现在很容易与Android 4.4。 见https://developers.google.com/chrome-developer-tools/docs/remote-debugging#debugging-webviews



Answer 3:

你可以做远程调试目标与Android浏览器weinre项目。 或者使用的Chrome远程调试与Android版Chrome浏览器。 据我所知,你不能直接靶向的WebView,但针对Android浏览器应该让你接近。



Answer 4:

它不能这样做,因为调试器后端代码是不存在的。 你引用的源代码是Android的WebKit源代码的副本,但它不是编译成Android的版本位。



Answer 5:

预奇巧jsHyBugger效果很好(试用版和年度单一用户许可证€29)

(我有给开发商没有连接/已购买许可证)



文章来源: how to enable WebKit's remote debugging/inspector of Android app using WebView?