FCM通知适用于Chrome,但不适用于Firefox

时间:2019-02-13 10:20:51

标签: javascript google-chrome google-chrome-extension firefox-addon firebase-cloud-messaging

我完全无法在Firefox上运行FCM通知,尽管它在Chrome上可以完美运行。

当我要求Firebase SDK返回当前身份验证令牌时,promise返回“ null”,这意味着它无法获取它。主要是由于一些权限问题。

console.log(Notification.permission);

打印“默认”,根据官方文档,其含义与“被拒绝”相同。

如果我尝试使用firebase.messaging().requestPermission()或浏览器版本的权限请求,请保证永远不会解决,并且我不会看到任何弹出窗口以请求权限。

我的manifest.json确实在权限字段中包含了“通知”。

我使用web-ext在Firefox上启动扩展程序

我有点绝望,这真是令人难以置信,要使网络扩展正常工作是如此困难。

谢谢

1 个答案:

答案 0 :(得分:0)

Web Notifications API与browser.notifications API略有不同。为了使用Notifications API,必须首先向用户询问权限,如本示例here所示。这是您在普通网页上要做的事情。

要在浏览器扩展中使用通知,必须在清单文件中设置notifications权限,然后使用browser.notifications.create 创建新通知。 这不会向用户提示允许通知的窗口弹出,因为清单文件中已经授予了此权限。