firebase-x@ionic 4 不显示推送消息(FCM)

Posted

技术标签:

【中文标题】firebase-x@ionic 4 不显示推送消息(FCM)【英文标题】:firebase-x@ionic 4 not showing push messages (FCM) 【发布时间】:2020-05-05 19:09:31 【问题描述】:

我在我的应用控制台中创建了这段代码:

app.compontent.ts

this.firebaseX.getToken().then(token => console.log('PUSH_TOKEN: GET_TOKEN: ', token))
.catch(err => console.log(err));

if (this.platform.is('ios')) 
    this.firebaseX.grantPermission().then(hasPermission => console.log(hasPermission ? 'granted' : 'denied'));

    this.firebaseX.onApnsTokenReceived().subscribe(token => console.log('PUSH_TOKEN: IOS_TOKEN: ' + token));


this.firebaseX.onMessageReceived().subscribe(message => console.log(message));

xCode 配置:

通过 firebase 控制台发送推送消息后的 Chrome 控制台:

应用初始化时的xCode控制台:



2020-01-19 17:09:22.816015+0100 myApp[8896:2663293] registerForRemoteNotifications
2020-01-19 17:09:22.816107+0100 myApp[8896:2663293] _hasPermission: YES

...

2020-01-19 17:09:22.821477+0100 myApp[8896:2663036] PUSH_TOKEN: IOS_TOKEN: d2aac51a963530-FULL_TOKEN_HERE
2020-01-19 17:09:22.821807+0100 myApp[8896:2663036] PUSH_TOKEN: GET_TOKEN:  frWxHosY-gQ:APA91bEk3-FULL_TOKEN_HERE

...

2020-01-19 17:13:46.395935+0100 myApp[8896:2663036] FCM direct channel = true
2020-01-19 17:15:39.418759+0100 myApp[8896:2663036] FCM direct channel = false


我正在调试环境中运行我的应用程序。

当前行为:

安卓:

    仅在应用程序关闭时获取推送消息(我不使用应用程序) - 是否可以在应用程序运行时获取推送?

iOS:

    仅获取 APNS 令牌,推送不会显示。我检查了双重设置 -> 通知 -> myApp 名称 -> 一切都已启用。在 Firebase 控制台中,我使用两个令牌(来自 IOS_TOKEN 和 GET_TOKEN)都不起作用。

iOS:13.3 (17C54)

xCode:11.3 (11C29)

"cordova-plugin-firebasex": "^7.0.1"

我应该怎么做才能开始在 iOS 上接收推送?

【问题讨论】:

android 中通常不会在前台显示推送通知。但是如果您在收到通知事件时进行了敬酒,那么您放置的敬酒或 abdthing 将被触发,或者您可以使本地通知包含从通知中接收到的数据并将它们设置为本地通知,然后也会在前台触发。 在 ios 中,您可能将 GoogleService-Info.plist 放在错误的目录中,因此当从 firebase api 触发通知时,它无法在设备上找到其目的地。 我会查看 GoogleService-info,谢谢您的建议。它之所以有效,是因为来自 google 的其他服务(分析、数据库、crashlytics)正在工作。 嗯好的,如果你在 ios 上收到通知时控制台记录事件,它会记录(即使我的意思是未显示通知)?? 只有在 Android 我可以看到收到消息的事件 【参考方案1】:

我解决了我的问题。

我忘记将我的 .p8 密钥上传到 Firebase。 https://firebase.google.com/docs/cloud-messaging/ios/certs

经验教训:总是阅读文档:)

【讨论】:

以上是关于firebase-x@ionic 4 不显示推送消息(FCM)的主要内容,如果未能解决你的问题,请参考以下文章

redis使用list做消息队列,为啥推送用lpush,而消费用的是brpop

APP懒人原则

标签栏控制器显示最后推送的控制器 - swift 4

09B-独立按键消抖实验02——小梅哥FPGA设计思想与验证方法视频教程配套文档

Cordova 插件推送通知不起作用?

消息推送可以推送啥内容?