chrome.notifications

描述 使用 chrome.notifications API 通过模板创建丰富通知,并在系统托盘中向用户显示这些通知。
可用版本 从 Chrome 28 开始支持。
权限 "notifications"
了解更多 丰富的通知
随时通知用户
Chrome 应用办公时间:丰富的通知

摘要

类型
TemplateType
PermissionLevel
NotificationOptions
方法
create chrome.notifications.create(string notificationId, NotificationOptions options, function callback)
update chrome.notifications.update(string notificationId, NotificationOptions options, function callback)
clear chrome.notifications.clear(string notificationId, function callback)
getAll chrome.notifications.getAll(function callback)
getPermissionLevel chrome.notifications.getPermissionLevel(function callback)
事件
onClosed
onClicked
onButtonClicked
onPermissionLevelChanged
onShowSettings

类型

TemplateType

枚举
"basic", "image", "list", or "progress"

PermissionLevel

从 Chrome 32 开始支持。

枚举
"granted", or "denied"

NotificationOptions

属性
TemplateType (可选)
type

要显示哪种类型的通知,调用 notifications.create 方法时必须指定

string (可选)
iconUrl

发送方的图标、应用图标或图片通知的缩略图 URL。

URL 可以为 data URL、blob URL 或相对于扩展程序 .crx 文件中的资源的 URL。调用 notifications.create 方法时必须指定

string (可选)
appIconMaskUrl

从 Chrome 38 开始支持。警告:目前为 Dev 分支。了解更多内容

应用图标遮罩 URL,URL 的限制与 iconUrl 相同。 应用图标的遮罩应该使用 Alpah 通道,而且只会考虑图片的 Alpha 通道。

string (可选)
title

通知标题(例如邮件发送者的姓名),调用 notifications.create 方法时必须指定

string (可选)
message

通知的主要内容,调用 notifications.create 方法时必须指定

string (可选)
contextMessage

从 Chrome 31 开始支持。

附加通知内容,以较小的字体显示。

integer (可选)
priority

优先级,从 -2 到 2,-2 优先级最低,2 最高,默认为零。

double (可选)
eventTime

与通知相关联的时间,表示为 1970 年 1 月 1 日以来所经过的毫秒数(例如 Date.now() + n)。

array of object (可选)
buttons

通知动作按钮(最多两个)的文本和图标。

每一个对象的属性

string title
string (可选)
iconUrl
string (可选)
imageUrl

图片类型的通知中图片缩略图的 URL。URL 的限制与 iconUrl 相同。

array of object (可选)
items

多项目通知的项目。

每一个对象的属性

string title

通知列表中某个项目的标题。

string message

该项目的额外详情。

integer (可选)
progress

从 Chrome 30 开始支持。

当前进度,从 0 到 100。

boolean (可选)
isClickable

从 Chrome 32 开始支持。

是否在用户界面中显示应用会以可见的方式响应通知正文的单击。

方法

create

chrome.notifications.create(string notificationId, NotificationOptions options, function callback)

创建并显示通知。

参数
string notificationId

通知的标识符。如果为空,该方法会生成一个标识符。如果匹配已有的标识符,该方法在创建操作之前会首先清除这一通知。

NotificationOptions options

通知内容。

function callback

返回通知标识符(提供的或生成的),代表创建的通知。

callback 参数应该是一个如下形式的函数:

function(string notificationId) {...};
string notificationId

update

chrome.notifications.update(string notificationId, NotificationOptions options, function callback)

更新已有的通知。

参数
string notificationId

要更新的通知标识符,由 notifications.create 方法返回。

NotificationOptions options

更新后的通知内容。

function callback

调用时指示是否存在匹配的通知。

callback 参数应该是一个如下形式的函数:

function(boolean wasUpdated) {...};
boolean wasUpdated

clear

chrome.notifications.clear(string notificationId, function callback)

清除指定的通知。

参数
string notificationId

要清除的通知标识符,由 notifications.create 方法返回。

function callback

调用时指示是否存在匹配的通知。

callback 参数应该是一个如下形式的函数:

function(boolean wasCleared) {...};
boolean wasCleared

getAll

chrome.notifications.getAll(function callback)

从 Chrome 29 开始支持。

获取所有通知。

参数
function callback

返回系统中当前所有通知标识符。

callback 参数应该是一个如下形式的函数:

function(object notifications) {...};
object notifications

getPermissionLevel

chrome.notifications.getPermissionLevel(function callback)

从 Chrome 32 开始支持。

获取用户是否为当前应用或扩展程序启用通知。

参数
function callback

返回当前的权限级别。

callback 参数应该是一个如下形式的函数:

function( PermissionLevel level) {...};
PermissionLevel level

事件

onClosed

通知由系统或用户操作关闭。

addListener

chrome.notifications.onClosed.addListener(function callback)
参数
function callback

callback 参数应该是一个如下形式的函数:

function(string notificationId, boolean byUser) {...};
string notificationId
boolean byUser

onClicked

用户单击了通知中的非按钮区域。

addListener

chrome.notifications.onClicked.addListener(function callback)
参数
function callback

callback 参数应该是一个如下形式的函数:

function(string notificationId) {...};
string notificationId

onButtonClicked

用户按下了通知中的一个按钮。

addListener

chrome.notifications.onButtonClicked.addListener(function callback)
参数
function callback

callback 参数应该是一个如下形式的函数:

function(string notificationId, integer buttonIndex) {...};
string notificationId
integer buttonIndex

onPermissionLevelChanged

从 Chrome 32 开始支持。

用户更改了权限级别。

addListener

chrome.notifications.onPermissionLevelChanged.addListener(function callback)
参数
function callback

callback 参数应该是一个如下形式的函数:

function( PermissionLevel level) {...};
PermissionLevel level

onShowSettings

从 Chrome 32 开始支持。

用户单击了应用的通知设置链接。

addListener

chrome.notifications.onShowSettings.addListener(function callback)
参数
function callback

callback 参数应该是一个如下形式的函数:

function() {...};