我在我的Flutter应用程序中使用Firebase Cloud Messaging。当我点击推送通知时,我无法导航到特定屏幕。当应用程序在前台和后台运行时,它可以正常工作,但是当应用程序被关闭时无法正常工作。
代码:
class FcmHelper {
final FirebaseMessaging _firebaseMessaging = FirebaseMessaging();
FlutterLocalNotificationsPlugin flutterLocalNotificationsPlugin =
new FlutterLocalNotificationsPlugin();
void initializeFcm() {
var initializationSettingsAndroid =
new AndroidInitializationSettings('@mipmap/ic_launcher');
flutterLocalNotificationsPlugin.initialize(initializationSettings,
onSelectNotification: onSelectNotification);
_firebaseMessaging.configure(
onMessage: (Map<String, dynamic> message) {
displayNotification(message);
return;
},
onResume: (Map<String, dynamic> message) {
displayNotification(message);
return;
},
onLaunch: (Map<String, dynamic> message) {
displayNotification(message);
return;
},
);
}
Future displayNotification(Map<String, dynamic> message) async {
// display notification
}
Future onSelectNotification(String payload) async {
try {
await flutterLocalNotificationsPlugin.cancelAll();
var tripDetails = HotelBookingDetails(
);
Navigator.pushAndRemoveUntil(
GlobalVariable.navState.currentContext,
MaterialPageRoute(builder: (context) => tripDetails),
ModalRoute.withName('/'));
} catch (e, s) {
debugPrint(e.toString());
}
}
}