0

I am using Local Notifications for my app and I am trying to set up the onSelectNotification but I can not make it work. This is how I init:

 Future initialize() async {
    FlutterLocalNotificationsPlugin flutterLocalNotificationsPlugin =
        FlutterLocalNotificationsPlugin();

    AndroidInitializationSettings androidInitializationSettings =
        AndroidInitializationSettings('app_icon');

    IOSInitializationSettings iosInitializationSettings =
        IOSInitializationSettings();

    final InitializationSettings initializationSettings =
        InitializationSettings(
            android: androidInitializationSettings,
            iOS: iosInitializationSettings);

    await flutterLocalNotificationsPlugin.initialize(
      initializationSettings, onSelectNotification: onSelectNotification
    );
  }

And my onSelectNotification:

  Future onSelectNotification(String payload) async {
    print(payload);
  }

But Flutter is complaining:

The argument type 'Future Function(String)' can't be assigned to the parameter type 'Future Function(String?)?'.

I couldn't find anything in the documentation about this and nowhere else.. What am I missing her?

Chris
  • 1,828
  • 6
  • 40
  • 108

2 Answers2

2

It should be

Future<void> onSelectNotification(String? payload) async {...}

instead of

Future<void> onSelectNotification(String payload) async {...}

It's missing the ? on your String payload

iandis
  • 66
  • 1
  • 4
-1

Use onSelectNotification to Future < dynamic > instead.

Future<dynamic> onSelectNotification(payload) async {
   // implement logic
   print("onSelectNotification : " + payload);
}