如何将调试器附加到设备? chrome 分机
how to attach debugger to device? chrome extention
这是我的 chrome 扩展的代码,据我所知,它应该 return 我可以将调试器附加到的所有目标:
chrome.browserAction.onClicked.addListener(function(tab) {
console.log('launching extention');
chrome.debugger.getTargets(function(result){
console.log('Result!');
console.log("count: "+result.length);
for (index = 0; index < result.length; index++) {
console.log(index+": "+result[index].url);
}
});
});
这是我的上述扩展的控制台输出:
这仅显示在 chrome 浏览器中打开的选项卡 return 编辑为可调试目标。
我的设备已正确连接和设置,因此我可以调试 android chrome 选项卡。
我用来尝试附加到设备调试器的方法是否正确?
相关文档链接;
remote-debugging, debugger, debugger-protocol, debugging-clients.
哎呀。似乎这样 API 不允许附加到设备页面。更糟糕的是,我找不到任何功能请求来启用它。
因此,您将需要进入低级别,并使用 "legacy workflow" 公开调试器以在您正在连接的 phone 上进行原始访问。
本质上,重要的部分是运行ADB命令
adb forward tcp:9222 localabstract:chrome_devtools_remote
在localhost:9222
暴露了AndroidChrome的调试接口,之后你可以use XHR / WebSockets to relay raw protocol messages.
恐怕这是唯一的办法了;如果您需要自动完成 ADB 步骤,可以使用 Native Host script。请注意,您仍然无法绕过需要在 phone.
上完成的 "pairing" 部分
这是我的 chrome 扩展的代码,据我所知,它应该 return 我可以将调试器附加到的所有目标:
chrome.browserAction.onClicked.addListener(function(tab) {
console.log('launching extention');
chrome.debugger.getTargets(function(result){
console.log('Result!');
console.log("count: "+result.length);
for (index = 0; index < result.length; index++) {
console.log(index+": "+result[index].url);
}
});
});
这是我的上述扩展的控制台输出:
这仅显示在 chrome 浏览器中打开的选项卡 return 编辑为可调试目标。
我的设备已正确连接和设置,因此我可以调试 android chrome 选项卡。
我用来尝试附加到设备调试器的方法是否正确?
相关文档链接; remote-debugging, debugger, debugger-protocol, debugging-clients.
哎呀。似乎这样 API 不允许附加到设备页面。更糟糕的是,我找不到任何功能请求来启用它。
因此,您将需要进入低级别,并使用 "legacy workflow" 公开调试器以在您正在连接的 phone 上进行原始访问。
本质上,重要的部分是运行ADB命令
adb forward tcp:9222 localabstract:chrome_devtools_remote
在localhost:9222
暴露了AndroidChrome的调试接口,之后你可以use XHR / WebSockets to relay raw protocol messages.
恐怕这是唯一的办法了;如果您需要自动完成 ADB 步骤,可以使用 Native Host script。请注意,您仍然无法绕过需要在 phone.
上完成的 "pairing" 部分