在前台隐藏颤振本地通知

时间:2021-06-08 14:11:46

标签: flutter flutter-local-notification

我想在应用程序处于前台时隐藏通知,但 IOS 即使在前台也显示通知。通常,当应用程序处于前台时,不会显示 FCM 通知。 这是我的代码

await flutterLocalNotificationsPlugin
        .resolvePlatformSpecificImplementation<
            AndroidFlutterLocalNotificationsPlugin>()
        ?.createNotificationChannel(channel);

    AndroidInitializationSettings androidInitializationSettings =
        AndroidInitializationSettings('@mipmap/ic_launcher');
    IOSInitializationSettings iosInitializationSettings =
        IOSInitializationSettings();

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

    flutterLocalNotificationsPlugin.initialize(initializationSettings,
        onSelectNotification: onSelectNotification);

    final bool? result = await flutterLocalNotificationsPlugin
        .resolvePlatformSpecificImplementation<
            IOSFlutterLocalNotificationsPlugin>()
        ?.requestPermissions(
          alert: true,
          badge: true,
          sound: true,
        );

2 个答案:

答案 0 :(得分:0)

只需要添加这一行

await FirebaseMessaging.instance.setForegroundNotificationPresentationOptions(
    alert: false,
    badge: false,
    sound: false,
  );

答案 1 :(得分:-1)

如果您不想在前台看到通知,请将您的代码添加到 onBackgroundMessage 处理程序。