重新安装cordova应用程序后如何自动重新连接Chrome DevTools?

时间:2018-01-03 19:47:58

标签: android cordova google-chrome-devtools

我正在使用Cordova开发混合Android应用,并使用Chrome DevToolschrome://inspect/#devices)进行检查和调试。

每次运行cordova run android --emulator更新模拟器上的应用时,DevTools都会断开连接。

我的问题是,DevTools成功启动应用后,如何自动重新连接Cordova

3 个答案:

答案 0 :(得分:1)

由于我无法找到有关重新连接的任何信息,因此我只能自动执行以下过程:

  1. 关闭已断开连接的v9.3.0窗口
  2. 在模拟器上部署新的应用版本后打开一个新的DevTools窗口
  3. 第1步我正在使用wmctrl。我创建了脚本:

    DevTools

    并将其添加为 #!/bin/bash wmctrl -c 'Developer Tools - file' || exit 0

    中的hook
    config.xml

    第2步我在<hook src="scripts/close_devtools.sh" type="before_deploy" /> 标签的控制台上运行以下代码

    chrome://inspect/#devices

答案 1 :(得分:1)

根据Paul的回答,如果连接了Android设备,我更新了他的脚本并修改为我的方法。

考虑将Android设备连接到端口192.168.0.149的本地IP 5037上,在chrome://inspect/#devices中输入此脚本就像一种魅力:

const targetNode = document.querySelector('#device\\:192\\.168\\.0\\.149\\:5037 .browsers')

const callback = function(mutationsList) {
  for (var mutation of mutationsList) {
    if (mutation.addedNodes.length) {
      targetNode.querySelector('.action').click();
    }
  }
};

const observer = new MutationObserver(callback);
observer.observe(targetNode, {childList: true});

答案 2 :(得分:0)

看看gapDebug。

它基本上是chrome devtools的包装器。如果您执行cordova run android --device --debug,gapDebug会注意到应用程序启动,并允许您像Chrome一样调试,还有一些额外的好处,如屏幕预览。

虽然它是not supported anymore,但您仍然可以download