- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
谈到 Service Worker,当推送通知到达时,我们可以处理用户点击这些通知,
例如,如果 url 尚未打开,则在浏览器的新选项卡中打开。但是如果我们有一个桌面网络应用程序(添加到 HomeScreen),我们如何打开它呢?
self.addEventListener('notificationclick', function(event) {
console.log('Notification click: tag ', event.notification.tag);
event.notification.close();
var url = 'https://youtu.be/gYMkEMCHtJ4';
event.waitUntil(
clients.matchAll({
type: 'window'
})
.then(function(windowClients) {
for (var i = 0; i < windowClients.length; i++) {
var client = windowClients[i];
if (client.url === url && 'focus' in client) {
return client.focus();
}
}
if (clients.openWindow) {
return clients.openWindow(url);
}
})
);
});
在这段代码中,clients.openWindow(url);将始终在浏览器中打开该应用。
最佳答案
目前还无法使用 URL 方案(即使用 clients.openWindow()
)启动打包的应用程序...有一个活跃的proposal允许使用自定义 URL 方案 chrome-app://APP_ID
启动应用。
解决这个问题的方法(基于 @kzahel 的提议)是使用带有已注册上下文菜单的扩展程序,然后以某种方式告诉扩展程序打开应用程序。
关于service-worker - 推送web api,notificationclick,如何打开桌面客户端而不是打开新的浏览器客户端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36528137/
我在我的网站中使用 FCM 推送通知,我希望用户可以在他或她点击推送通知时进入我的网站。请注意,用户可能在其他应用程序或其他浏览器选项卡中,我希望当用户收到 fcm 通知时,用户将能够通过单击 Fir
我正在与 service worker 合作,在我的用户之间显示通知。在我的代码中,我包含了 notificationclick 事件。对于这个事件,我试图处理两个案例。第一种情况,如果在我的浏览器中
所以我试图让这个工作在这里是jquery+php。 当我尝试在 jquery 中触发点击时,它甚至不执行“alert()”。 PHP(更新): $MSG_Notification_sql = mysq
谈到 Service Worker,当推送通知到达时,我们可以处理用户点击这些通知, 例如,如果 url 尚未打开,则在浏览器的新选项卡中打开。但是如果我们有一个桌面网络应用程序(添加到 HomeSc
在为 Chrome 处理 GCM 推送通知时,我已经为服务工作人员收到 GCM 推送事件设置了推送通知。 我正在发起服务调用。该服务返回一个数据对象,其中我有一个 URL,我想在用户单击通知时打开该
我正在为我的网站启用网络通知,并在服务 worker .js 文件中添加以下事件监听器,这在边缘工作正常,点击事件被触发并打开一个新窗口,但是 chrome 没有任何反应并且事件本身不会触发 - se
我是一名优秀的程序员,十分优秀!