【发布时间】:2016-02-25 23:03:53
【问题描述】:
我正在开发 chrome 扩展程序,目前正在使用 chrome.notifications API。 我需要的行为是让每个通知都有一个特定且可能不同的 URL 以在点击时打开。
使用丰富的 chrome 通知,我可以通过 chrome.notifications.create(string notificationId, NotificationOptions options, function callback) 创建通知,但 Options 参数不允许我发送额外信息,例如我希望它打开的 url。
最好的方法是什么?
我可以将chrome.notifications.onClicked.addListener(function(string notificationId) {...}) 函数与notificationId 一起使用并找出url 是什么,但要么我再次调用服务器以找出它(我想避免),要么我可以将它存储在本地存储,但更简单的方法是在我从服务器接收到该信息时使用该信息创建通知,而不是仅在单击发生时存储它或从服务器再次获取它。
我可以使用 Html5 通知,并执行以下操作:
var notification = new Notification('Notification title', {
icon: 'http://cdn.sstatic.net/stackexchange/img/logos/so/so-icon.png',
body: "Hey there! You've been notified!",
});
notification.onclick = function () {
window.open("http://stackoverflow.com/a/13328397/1269037");
但我会失去 RichNotification 功能,我也在努力避免那样做。
有没有更简单或更好的方法?
干杯
【问题讨论】:
-
是的,本地存储是我的想法,因为我没有持久的背景页面。
标签: google-chrome-extension notifications