I am using "Firebase Cloud Messaging" for receiving notifications and "flutter_local_notifications" plugin to configure and display them on my device. So my current scenario is when my app is running (in foreground), I am receiving proper notification as expected (a pop-up plus it gets stored in system-tray) like this :
It also gets stored in the system tray as expected.
But when I keep the app in background and post a notification request ........ It just stores the notification in the tray but doesnt show a pop-up notification. Like this :
As seen in the image above .... it just stores the notification in the image tray but doesn't show pop-up notification like when the app is running in foreground.
I thought I was an issue in the "backgroundMessage" Callback but what I observed was whenever I posted a notification when the app is in background, instead of executing the "backgroundMessage" callback it always gave this exception :
W/FirebaseMessaging(22744): Missing Default Notification Channel metadata in AndroidManifest. Default value will be used.
Below is the code where I configured the FirebaseMessaging instance :
_firebaseMessaging.configure(
onMessage: notification,
onBackgroundMessage: notificationBack,
);
'notification' Callback :
Future<dynamic> notification(Map<String,dynamic> message) async {
AndroidNotificationDetails androidNotificationDetails =
AndroidNotificationDetails(
'Channel ID', 'Channel title', 'channel body',
priority: Priority.High,
importance: Importance.Max,
ticker: 'test');
IOSNotificationDetails iosNotificationDetails = IOSNotificationDetails();
NotificationDetails notificationDetails =
NotificationDetails(androidNotificationDetails, iosNotificationDetails);
await _flutterLocalNotificationsPlugin.show(
0, 'Notification', 'New Notification', notificationDetails);
}
'notificationBack' callback :
static Future<dynamic> notificationBack(Map<String,dynamic> message) async {
AndroidNotificationDetails androidNotificationDetails =
AndroidNotificationDetails(
'Channel ID', 'Channel title', 'channel body',
priority: Priority.High,
importance: Importance.Max,
visibility: NotificationVisibility.Public,
ticker: 'test');
IOSNotificationDetails iosNotificationDetails = IOSNotificationDetails();
NotificationDetails notificationDetails =
NotificationDetails(androidNotificationDetails, iosNotificationDetails);
await _flutterLocalNotificationsPluginBack.show(
0, 'Hello there', 'please subscribe my channel', notificationDetails);
}
AndroidManifest.xml :
Sorry for the screenshot instead of text format .... but I dont know why all these terms were highlighted in red saying "Cant resolve symbol ...." and "Unresolved package 'flutterlocalnotifications'" in case of reciever of flutterlocalnotification.
My main goal is to get the game pop-up notification and one in the system tray even when the app is in background. (Just how it displayed when it was in foreground).
I know the question is a bit long but I had to provide all my observation about the issue so please bare with it :)
Thankyou in advance for the help.