如何在 NativeScript Angular 应用程序中初始化 Firebase 推送通知

Posted

技术标签:

【中文标题】如何在 NativeScript Angular 应用程序中初始化 Firebase 推送通知【英文标题】:How to initiazlize firebase puse notifications in NativeScript Angular app 【发布时间】:2020-04-27 07:37:02 【问题描述】:

我正在使用以下插件创建一个带有 nativescript + Angular + Firebase 推送通知的应用程序:nativescript-plugin-firebase。 根据他们的文档 firebase.init 应该被称为 OnInit 但是在开发中重新加载应用程序后我收到一个错误“令牌已经初始化” 问题是如何检查令牌是否已经初始化。 我可以使用此代码进行检查,但它有点 hacky:

const initializedToken = await messaging.getCurrentPushToken();

if (initializedToken) 
    return;

我还想知道是否开发应用重启 = 应用在真实设备上重新打开?

谢谢

【问题讨论】:

【参考方案1】:

我没有使用过 Nativescript,但根据我的 Angular 知识,我可以告诉你将 firebase.init() 方法放在 app.component.ts 文件中,因为它是第一个组件,并且在应用程序启动后总是急切地加载。然后你可以使用firebase的方法来验证它的初始化与否。

【讨论】:

这正是我要添加的地方。但是每次更改应用程序都会重新加载,并且我收到错误消息说 firebase 已经初始化。 什么样的变化 应用程序重建时任何文件保存更改

以上是关于如何在 NativeScript Angular 应用程序中初始化 Firebase 推送通知的主要内容,如果未能解决你的问题,请参考以下文章

如何在 nativescript angular 中实现图像缓存

如何使用 Angular 在 NativeScript 中使用 XML 而不是 Html 进行设计?

如何在Angular中销毁Nativescript生命周期的applicationOn事件

如何在 NativeScript Angular 应用程序中初始化 Firebase 推送通知

如何在 nativescript-angular html 文件中添加水平线

如何让 Jest 正确转换 node_modules/@nativescript/core? Jest + NativeScript + Angular + Nx