1

I have a flutter app that uses local notifications https://pub.dev/packages/flutter_local_notifications.

I have a notification that is set to a certain date :

await flutterLocalNotificationsPlugin.initialize(initializationSettings,


     onDidReceiveNotificationResponse: (NotificationResponse response) async {

       print("FOREGORUND");

     },
     onDidReceiveBackgroundNotificationResponse: notificationTapBackground,
 );



  await flutterLocalNotificationsPlugin.zonedSchedule(
        uid.hashCode,
        title,
        desc,
        timez.TZDateTime.from(datex, timez.local),
        NotificationDetails(
            android: AndroidNotificationDetails(
              'your channel id', 'your channel name',
              channelDescription: 'your channel description',
              actions: <AndroidNotificationAction>[
                AndroidNotificationAction(
                  "CompleteID",
                  "Complete",
                  icon: DrawableResourceAndroidBitmap('complete_img'),
                  showsUserInterface: false,
                  cancelNotification: true,
                ),
              ],)
        ),
        payload: uid,
        androidAllowWhileIdle: true,
        uiLocalNotificationDateInterpretation:
        UILocalNotificationDateInterpretation.absoluteTime);

When I click on the complete action from the notification, the app calls "notificationTapBackground" even if the app is in foreground, so from notificationTapBackground isolate thread i can' t call setstate inside my app.

I would like to be able to click on the complete action from the notification and have :

  • the app calls notificationTapBackground, if the app is in the background
  • the app calls onDidReceiveNotificationRespons, if the app is in the foreground

all with the parameter showsUserInterface: false, inside notification actions.

John
  • 313
  • 4
  • 17

0 Answers0