Firebase Cloud Messaging 无法在带有 Flutter 应用程序的 Android 上运行
Posted
技术标签:
【中文标题】Firebase Cloud Messaging 无法在带有 Flutter 应用程序的 Android 上运行【英文标题】:Firebase Cloud Messaging not working on Android with Flutter app 【发布时间】:2021-08-23 20:55:37 【问题描述】:我有一个在 Firebase 中注册的适用于 ios 和 android 的 Flutter 应用。根据https://firebase.flutter.dev/docs/messaging/overview/,FCM(推送通知)几乎是开箱即用的。 唉,它没有。
我已将其添加到 pubspec.yaml
。我实际上添加了firebase_messaging: ^7.0.3
,因为任何更新的东西都会破坏其他依赖项。然后我转到 Firebase 控制台并发送一条针对我的 Android 注册应用程序的测试消息。一旦消息通过并说它已完成,我的模拟器就没有消息了。
我知道 iOS 上的 FCM 在模拟器上存在问题,但我没有读到任何关于它在 Android 上的案例。
我在main
中添加了import 'package:firebase_messaging/firebase_messaging.dart';
并实例化了 FirebaseMessaging messaging = FirebaseMessaging();
,结果如上所示,即我的模拟器的通知中没有任何内容。
最奇怪的是,我最初关注的是https://sebastianengel.medium.com/easy-push-notifications-with-flutter-and-firebase-cloud-messaging-d96084f5954f,它的参与度更高,我确实收到了第一个通知(原文如此!),但没有收到任何后续通知。我再次尝试从头开始执行此解决方案,但我的模拟器上的通知仍然无动于衷。
要记住的一点是,我很少使用其他 Firebase 服务,因此我知道我的应用已正确注册到 Firebase...除非我错过了一些额外的步骤并且看不到。
请任何人经历过同样的考验,并能查明我的盲点吗?谢谢。
更新 - 我检查了错误日志,它们是空的。
【问题讨论】:
implementation 'com.google.firebase:firebase-messaging' 你是否在应用程序的 gradle 文件中添加了这一行? 你没有收到错误日志吗? @kirsh 是的,在应用程序的 build.gradle 中 @kirshan 我在运行中没有收到任何错误 可以显示错误日志吗? 【参考方案1】:您能发布更多信息吗?例如,当您发送通知时的控制台日志(也可以尝试使用基本打印语句进行故障排除),更好的是,发送可重现的 sn-p 代码,以便我可以重现您的问题。
还要确保在***函数中初始化通知处理(最好是 main)。
我很乐意与您合作,请通过 seanonuoha@gmail.com 与我联系,当我们解决问题时,您会在此处发布结果。
干杯
【讨论】:
【参考方案2】:如果您按照this documentation 中的步骤操作,仍然没有收到任何消息或通知,您可以检查您的模拟器设置。 模拟器默认 SERIAL CONSOLE DISABLED。 滑动它并将其启用。 这个问题解决了我的问题。
如果您尝试过但仍然遇到问题。不要犹豫再问一次。
....
【讨论】:
以上是关于Firebase Cloud Messaging 无法在带有 Flutter 应用程序的 Android 上运行的主要内容,如果未能解决你的问题,请参考以下文章
Flutter Firebase Cloud Messaging onMessage 被触发两次
Google Cloud Messaging与Firebase
Firebase Cloud Messaging:Firebase Admin SDK 中的设备组发送支持
如何使用 Firebase Cloud Messaging 在前台显示多个通知