gpt4 book ai didi

android - 应用打开时接收 FCM 通知的问题

转载 作者:行者123 更新时间:2023-12-05 00:02:33 25 4
gpt4 key购买 nike

我在 Android Studio 中编写了一个测试 Flutter 应用程序来接收来自 Firebase 的推送通知。完成后,我通过 AVD 将它安装在新的模拟器上,并测试了在应用程序终止时收到推送通知。那工作得很好。当应用程序在后台打开时。再次成功。但奇怪的是,当应用程序打开时,推送通知似乎正在发送到设备,因为我收到了 D/FLTFireMsgReceiver( 6020): broadcast received for message在我发布推送通知但它从不显示任何内容后,我得到了

W/FirebaseMessaging( 6020): Unable to log event: analytics library is missing
W/FirebaseMessaging( 6020): Unable to log event: analytics library is missing
我试过了:
FirebaseMessaging.onMessage.listen((RemoteMessage message) {
print('A new onMessage event was published!');})
我什至没有得到打印线。
我做错了什么会导致通知仅在应用程序未在前台运行时才起作用?

最佳答案

在 pubspec.yaml 上添加这些库并使用下面的代码
firebase_analytics:^8.1.2
firebase_messaging:^10.0.0

      void main() async {
WidgetsFlutterBinding.ensureInitialized();
await Firebase.initializeApp();
FirebaseMessaging.onBackgroundMessage(_messageHandler);

runApp(MyApp());
}


initialize() async {
FirebaseMessaging messaging = FirebaseMessaging.instance;

FirebaseMessaging.onMessage.listen((RemoteMessage event) {
print("message recieved");
print(event.notification!.body);
});
FirebaseMessaging.onMessageOpenedApp.listen((message) {
print('Message clicked!');
});


FirebaseMessaging.onMessage.listen((RemoteMessage event) {
print("message recieved");
print(event.notification!.body);
showDialog(
context: context,
builder: (BuildContext context) {
return AlertDialog(
title: Text("Notification"),
content: Text(event.notification!.body!),
actions: [
TextButton(
child: Text("Ok"),
onPressed: () {
Navigator.of(context).pop();
},
)
],
);
});
});
}

@override
void initState() {
super.initState();
initialize();
}

关于android - 应用打开时接收 FCM 通知的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69138287/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com