4

早安,巫师。

我正在尝试为 chromium-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. 访问此变量时我得到“未定义”。

我的一部分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

当我从扩展页面转到 chromium 控制台时,自动完成提示我 no chrome.alarms。显然,当我在那里打字时chrome.alarms,我真的得到了undefined。为什么这样?..

我完全陷入困境,无法在互联网上的任何地方找到解决方案,我做错了什么?

4

3 回答 3

14

我最近也遇到了一些麻烦,并且在文档的任何地方(或任何相关位置)都没有看到这一点。

只要确保也请求alarms许可:

清单.json

{
    "manifest_version": 2,
    "permissions": [
        // ...  
        "alarms"
    ]
}
于 2013-03-06T04:26:06.953 回答
1

您至少需要 Google Chrome 22。

Availability:   Google Chrome 22

http://developer.chrome.com/trunk/extensions/alarms.html

于 2013-01-09T02:37:55.810 回答
1

您需要从第三方维护的 repo 安装 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)。

于 2013-01-11T15:39:25.440 回答