Chrome的远程调试器非常适合连接到支持V8远程调试协议的V8主机应用程序。然而,尽管一些使用V8的应用程序提供了此协议支持,但似乎没有任何预先存在的库或类似库可用于将此协议支持添加到新的基于V8的应用程序堆栈中。
具体地说,我在Android上有一个NDK应用程序,它使用V8作为脚本引擎,我想知道启用它以获得远程调试支持的最简单方法。
我看过V8::Debug API (通过v8.h和Doxygen),但它似乎没有任何对实际有线协议的内置支持,理想情况下,我希望能在其上运行套接字服务器的东西(或者更好的是,只与adb一起工作的东西,如WebView或类似的)。
发布于 2015-04-15 04:03:13
V8曾经有一个API可访问的调试代理,它是一个组件,可以设置侦听套接字并代表给定的隔离与调试器对话。
该应用程序接口不再可用,但您仍然可以查看它的实现,并在V8主机中构建类似的东西。它是一个相对简单的服务器,可以与远程调试器客户机交换JSON消息。V8仍然具有处理消息的API,因此您只需实现套接字通信。
您可以获取一些旧的V8源代码,如下所示:
svn checkout http://v8.googlecode.com/svn/branches/3.26@24646 v8一旦您有了源代码,调试代理就在v8/src/debug-agent.*。
https://stackoverflow.com/questions/28289538
复制相似问题