我正在尝试编写一个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
)但不是第二个;这是否意味着它无法连接到浏览器?
答案 0 :(得分:0)
chrome.app
未定义,因为您没有将扩展程序定义为应用程序。
Chrome扩展程序在清单文件中只能一个:
browser_action
,page_action
,theme
或app
。
在您的清单中,您正在定义浏览器操作。
深吸一口气,阅读manifest file的文档。