在Chrome上激活chrome.notifications对象

时间:2015-04-09 14:24:35

标签: javascript api google-chrome notifications

我想尝试在Chrome上使用chrome.notifications API(使用Windows和Chrome 40+,因此支持API)。唯一的问题是在尝试使用时对象根本不存在。 chrome.notifications的类型未定义,显然如果我尝试使用chrome.notifications.create,我会收到错误"无法读取属性创建未定义"。

问题是,我已经激活了通知,并且我在我的Android手机上使用了pushbullet,它使用了这个丰富的通知功能,而且效果很好。

为Chrome应用程序保留chrome.notifications是什么?

非常感谢你。

1 个答案:

答案 0 :(得分:2)

我认为chrome.notifications仅限Chrome插件,但您可以使用"standard" Notification api

Example usage:

function notifyMe() {
  // Let's check if the browser supports notifications
  if (!("Notification" in window)) {
    alert("This browser does not support desktop notification");
  }

  // Let's check if the user is okay to get some notification
  else if (Notification.permission === "granted") {
    // If it's okay let's create a notification
    var notification = new Notification("Hi there!");
  }

  // Otherwise, we need to ask the user for permission
  else if (Notification.permission !== 'denied') {
    Notification.requestPermission(function (permission) {
      // If the user is okay, let's create a notification
      if (permission === "granted") {
        var notification = new Notification("Hi there!");
      }
    });
  }

  // At last, if the user already denied any notification, and you 
  // want to be respectful there is no need to bother them any more.
}
  

这是一项实验性技术
  由于此技术的规范尚未稳定,请检查compatibility table以获取在各种浏览器中使用的正确前缀。另请注意,随着规范的更改,实验技术的语法和行为可能会在未来版本的浏览器中发生变化。