【发布时间】:2018-09-02 20:36:26
【问题描述】:
我偶然发现了我的 Ionic、Angular 和 Firebase 应用程序的问题。
我以前遇到过这个问题,但它似乎自己解决了,现在我又遇到了,我想知道是否有人知道为什么。
我正在使用 Firebase FCM 存储用户的 token,然后向他们发送通知。在 android 上可以完美运行,而在 iOS 上它曾经可以正常运行..
我从 Firebase 生成了我的 GoogleService-Info.plist 文件并将其放在我的主文件夹中。
我有以下代码来获取fcm 令牌:
getFCMToken() {
let token;
this.firebaseNative.getToken().then((tok) => {
token = tok;
if(this.platform.is('ios')) {
this.firebaseNative.grantPermission().then((tok) => {
return this.fcmToFirestore(token);
}).catch(error => this.showToast("There was an error: " + error));
} else {
return this.fcmToFirestore(token);
}
}).catch(error => {
this.showToast("There was an error: " + error)
});
}
fcmToFirestore(token) {
if (!token) return;
const devicesRef = this.afs.collection('devices')
const docData = {
token,
userId: this.userData.uid,
}
return devicesRef.doc(token).set(docData);
}
当我在 iPhone 上运行以下代码时,我收到了 toast 消息:
出现错误:Firebase 未初始化
我在imports 中初始化app.module.ts 中的应用程序,这一直有效,正如我所说,在android 上运行良好。
知道为什么这在 iOS 上不起作用吗?谢谢!
【问题讨论】:
标签: javascript angular firebase ionic-framework cordova-plugin-fcm