Flutter Local Notifications onSelectNotification Navigator не работает, если приложение уже открыто

Я использую навигатор в onSelectNotification в локальных уведомлениях Flutter, если приложение уже запущено, когда я устанавливаю уведомление, навигатор работает нормально, если приложение закрыто и открыло его через уведомление, оно тоже работает нормально, потому что я использую didNotificationLaunchApp.Однако , если приложение было закрыто после установки уведомления и было открыто снова до получения уведомления, навигатор вообще не работает. какие-либо предложения?

вот код

      void setNotification(
      BuildContext context, int id, int hours, int minutes) async {
    await flutterLocalNotificationsPlugin.initialize(initializationSettings,
        onSelectNotification: (String payload) async {
          if (payload != null) {
            debugPrint('notification payload: $payload');
          }
          Navigator.push(
            context,
            MaterialPageRoute(
              builder: (context) => PageScreen(
                title: payload,
              ),
            ),
          );
        });

    await flutterLocalNotificationsPlugin.zonedSchedule(
        id,
        'Notification Title',
        'Notification Body',
        _nextInstanceOfTime(hours, minutes),
        const NotificationDetails(
          android: AndroidNotificationDetails(
            'daily notification channel id',
            'daily notification channel name',
            'daily notification description',
            playSound: true,
            sound: RawResourceAndroidNotificationSound('pop'),
            importance: Importance.max,
            priority: Priority.high,
          ),
        ),
        androidAllowWhileIdle: true,
        uiLocalNotificationDateInterpretation:
            UILocalNotificationDateInterpretation.absoluteTime,
        payload: 'Notification Payload',
        matchDateTimeComponents: DateTimeComponents.time);
  }

0 ответов

Другие вопросы по тегам