Describe the bug
since the ios18 release there's some issue with push notification twice when I use flutter local notification function inside FirebaseMessaging.onMessage.listen() function. and it's only happen to ios18 device (even after firebase has already fix the notification twice but the local notification still push twice).
Expected behavior
I would expect the notification to only push once.
Sample code to reproduce the problem
var initializationSettingsAndroid = const AndroidInitializationSettings('@mipmap/ic_launcher');
var initializationSettingsIOS = const DarwinInitializationSettings(
defaultPresentAlert: true,
);
Describe the bug since the ios18 release there's some issue with push notification twice when I use flutter local notification function inside FirebaseMessaging.onMessage.listen() function. and it's only happen to ios18 device (even after firebase has already fix the notification twice but the local notification still push twice).
Expected behavior I would expect the notification to only push once.
Sample code to reproduce the problem
var initializationSettingsAndroid = const AndroidInitializationSettings('@mipmap/ic_launcher'); var initializationSettingsIOS = const DarwinInitializationSettings( defaultPresentAlert: true, );
var initializationSettings = InitializationSettings(android: initializationSettingsAndroid, iOS: initializationSettingsIOS); await flutterLocalNotificationsPlugin.initialize(initializationSettings, onDidReceiveNotificationResponse: (response) async {
});
FirebaseMessaging.onMessage.listen((RemoteMessage remoteMessage) { var message = remoteMessage.data; print("onMessage==>: listen $message"); appNotification = AppNotification( id: message['id'], type: message['type'], title: message['title'], content: message['content'], referenceId: message['reference_id'], screenDetail: message['detail_screen'], ); _showNotification(appNotification); });
Future _showNotification(AppNotification? appNotification) async {
try {
const AndroidNotificationDetails androidPlatformChannelSpecifics = AndroidNotificationDetails(
'default_channel_id',
'your_channel_name',
channelDescription: 'your_channel_description',
importance: Importance.max,
priority: Priority.high,
showWhen: false,
);
}