检查浏览器中是否可以使用 firebase 消息传递

Rob*_*ner 0 firebase firebase-cloud-messaging angularfire2 angular

我打算使用@angular/fire包装器在我的 Angular 应用程序中使用 Firebase 消息传递。

在最初的 Firebase 参考中,他们描述了一个firebase.messaging.isSupported() 方法,在计划让我的应用程序可用于各种浏览器时,这似乎是一个明智的调用。

现在@angular/fire 包装器没有公开该方法,并且在查看它的源代码时,它似乎也没有在内部使用它。

所以我的问题是:只注册requestToken@angular/fire 包装器的可观察对象是否安全,或者我是否需要首先确保当前浏览器支持 Firebase 消息传递?

wcj*_*ord 7

如果您使用的是 angular/fire,那么 firebase 是一个依赖项。我们只是在做:

import * as firebase from 'firebase/app';
import 'firebase/messaging';

@Injectable()
export class NotificationService {

  constructor(
     ...
  ) {

    this.messaging = firebase.messaging();

    if (firebase.messaging.isSupported()) {
        ...         
    } else {
        // let the user know their browser doesn't support notifications, probably Safari, eww
    }

  }
Run Code Online (Sandbox Code Playgroud)