为浏览器调试firebase消息传递服务工作者

时间:2018-06-14 08:00:37

标签: javascript angularjs firebase firebase-cloud-messaging

我正在尝试在angularjs(1.x)app中实现firebase推送通知,我收到的消息除了messaging.setBackgroundMessageHandler()中的几个问题,然后点击处理程序。

有什么办法可以调试firebase-messaging-sw.js文件吗?

我正在尝试放置无效的自定义图标。 以下是我使用的代码:

messaging.setBackgroundMessageHandler(function(payload) {
  var notificationOptions = {
    icon: 'file:///C:/xampp/htdocs/client_xampp/client/images/my-logo.svg'
  };
  return self.registration.showNotification(notificationTitle, notificationOptions);
});

收到后台通知后,当用户点击通知时我会将用户导航到我的网页,但即使页面已经打开,它也会打开新标签。

self.addEventListener('notificationclick', function(event) {

  var examplePage = "http://localhost/client_xampp/public/home/main";
  const urlToOpen = new URL(examplePage, self.location.origin).href;

  const promiseChain = clients.matchAll({
    type: 'window',
    includeUncontrolled: true
  })
  .then((windowClients) => {
    let matchingClient = null;

    for (let i = 0; i < windowClients.length; i++) {
      const windowClient = windowClients[i];
      if (windowClient.url === urlToOpen) {
        matchingClient = windowClient;
        break;
      }
    }

    if (matchingClient) {
      return matchingClient.focus();
    } else {
      return clients.openWindow(urlToOpen);
    }
  });

  event.waitUntil(promiseChain);

当用户收到通知且浏览器未打开时,我有什么方法可以播放事件,我实际上需要在我的应用中增加并显示通知计数器。

TIA !!!

0 个答案:

没有答案