早上好,巫师。
我正在尝试编写chrome-browser的扩展程序。
铬的版本是18.0.1025.151 (development build 130497 Linux) Built on Ubuntu 12.04, running on Ubuntu 12.10
我的操作系统是ubuntu GNU / Linux 12.04.1(LTS),64位。
问题是:我无法使用chrome.alarms
。访问此变量时,我得到'undefined'。
我manifest.json
的一部分:
"background": {
"scripts": ["background.js"]
},
"permissions": [
"alarms",
"tabs",
"http://*/*"
],
我background.js
的一部分:
chrome.alarms.onAlarm.addListener(function(alarm) {
if (! alarm.name.match ('/^extension47_.*/'))
return;
alert ('extension47 fired an alarm!');
});
我得到了什么:
Uncaught TypeError: Cannot read property 'onAlarm' of undefined
在chrome.alarms.onAlarm.addListener
行。
当我从扩展程序页面转到chrome控制台时,自动完成功能表明我没有chrome.alarms
。显然,当我输入chrome.alarms
时,我真的得到undefined
。为什么呢?..
我完全陷入困境,未能在互联网上的任何地方找到解决方案,我做错了什么?
答案 0 :(得分:9)
我最近遇到了一些麻烦,并没有在文档中(或任何相关位置)看到任何注意事项。
请务必同时询问alarms
权限:
manifest.json
{
"manifest_version": 2,
"permissions": [
// ...
"alarms"
]
}
答案 1 :(得分:1)
您至少需要Google Chrome 22。
Availability: Google Chrome 22
答案 2 :(得分:1)
您需要从第三方维护的回购安装Chromium:
sudo add-apt-repository ppa:a-v-shkop/chromium
sudo add-apt-get update
sudo apt-get install chromium-browser
这将为您提供版本23.0.1271.64 Ubuntu 12.04(165188)。