У меня возникла проблема с push-уведомлениями Firebase, когда приложение УБИТО. Что происходит: Во-первых, так должны работать push-уведомления. При касании вы перенаправляетесь к заданию типа перемещения или заданию типа события.
Future initialize() async {
await getConnectivity();
if (hasInternet) {
try {
await configurePushNotificationHandlers();
} catch (e) {
hasApiConnection = false;
}
}
}
Future configurePushNotificationHandlers() async {
await navigationService.navigateReplacementWithParams(ErrorPage());
await _firebaseMessaging.requestPermission(
alert: true,
badge: true,
provisional: false,
sound: true,
);
String fbToken = await _firebaseMessaging.getToken();
FirebaseMessaging.onMessage.listen((RemoteMessage message) async {
if (message.data != null && message.data.containsKey('showInPageNotification')) {
numberOfNotifications++;
}
notifyListeners();
});
FirebaseMessaging.onMessageOpenedApp.listen((RemoteMessage message) async {
print('A new onMessageOpenedApp event was published!');
if (message.data != null && message.data.containsKey('job_id')) {
String jobId = message.data['job_id'];
String jobType = message.data['job_type'];
jobType = jobType.toLowerCase();
if (jobType == 'move') {
await goToJobDetail(jobId);
} else {
await goToEventDetail(jobId);
}
}
});
Кто-нибудь знает, почему это происходит? Push-уведомления работают нормально, это перенаправление текущего ISSUE. Спасибо!
Я добавил в сообщение страницу, на которой у меня есть конфигурация обработчиков уведомлений, когда я запускаю этот виджет, он запускает инициализацию и этот метод @OzanTaskiran
Используйте метод FirebaseMessaging.instance.getInitialMessage() для получения сообщений
Если приложение закрыто/убито
FirebaseMessaging.instance
.getInitialMessage()
.then((RemoteMessage message) {
print("FirebaseMessaging.getInitialMessage $message");
});
Попробуйте это и дайте мне знать.
Можете ли вы показать нам некоторые фрагменты кода?