如何在主窗口中停靠扩展后台脚本的调试窗口?

时间:2013-06-21 05:35:29

标签: google-chrome-extension google-chrome-devtools

我有一个运行background.js文件的Google Chrome扩展程序。当我通过chrome://extensions/打开它的调试控制台并点击Inspect views: _generated_background_page.html时,我得到了一个包含所有调试信息的开发工具的窗口实例。

我希望该窗口停靠在主窗口内,确实有一个" Dock到主窗口"在左下角嘲笑我但按下它绝对没有。

所以我想知道,这是Chrome上的一个错误/功能,还是我设置了我的扩展程序错误的事件,虽然它有效?

manifest.json

{
    "manifest_version": 2,
    "name": "Name",
    "version": "0.4",
    "description": "some description",
    "permissions": [
        "tabs", "*://www.somesite.com/*"
    ],
    "background": {
        "persistent": false,
        "scripts": ["background.js"]
    },
    "content_scripts": [
        {
            "matches": ["*://www.somesite.com/*"],
            "js": ["components/jquery/jquery.min.js", "main.js"],
            "run_at": "document_end",
            "all_frames": true
        }
    ]
}

1 个答案:

答案 0 :(得分:1)

在选项卡中获取背景页面的检查器的最简单方法是使用remote debugging protocol。如果您有冒险精神,可以使用chrome.debugger API自行编写和实施前端。

如果你理智,只需使用--remote-debugging-port标志启动Chromium即可。这将创建一个本地服务器(仅可从您自己的计算机内访问),可通过http://localhost:<port>访问。然后,您可以使用此页面检查背景页面并与之交互。

这是一个屏幕截图,显示了正在使用的功能:

注意:每个页面只能激活一个调试实例。如果您打开内置的devtools,则在您刷新devtools页面之前,localhost上的检查器将被禁用,并显示以下消息:

  

远程调试已终止,原因是:replacement_with_devtools
  请重新附加到新目标。