2

我正在尝试编写一个 chrome 插件,我使用以下清单定义了该插件:

{
  "name": "test",
  "version": "1.0",
  "background": { "scripts": ["background.js"] },
  "permissions": [
    "tabs", "http://*/*"
  ],
  "browser_action": {
    "name": "test",
    "icons": ["icon.png"]
  },
  "manifest_version": 2
}

我的background.js文件如下所示:

chrome.app.runtime.onLaunched.addListener(function() { 
    console.log('details', chrome.app.getDetails());
});

加载时,我在控制台上看到此错误:

Uncaught TypeError: Cannot read property 'onLaunched' of undefined 

我不知道为什么我没有看到正确初始化的chrome.app.runtime.

我该如何调试?

基因

更新:

当我运行以下代码时:

console.log("before connection");
chrome.extension.onConnect.addListener(function(port) {
    console.log("connected");
});

我看到第一个日志输出 ( before connection) 但没有看到第二个;这是否意味着它无法连接到浏览器?

4

1 回答 1

0

chrome.app未定义,因为您没有将扩展程序定义为应用程序。

Chrome 扩展程序只能是清单文件中的以下之一: browser_actionpage_actionthemeapp.

在您的清单中,您正在定义一个浏览器操作。

因此,深呼吸并阅读清单文件的文档。

于 2012-12-11T17:36:51.150 回答