web-dev-qa-db-fra.com

Flutter: notifications push même si l'application est fermée

J'ai construit une application avec flutter qui fonctionne comme un rappel.
Comment puis-je afficher des notifications à l'utilisateur même si l'application est fermée?

5
SlimenTN

Pour les rappels, je recommanderais Plugin Flutter Local Notifications . Il a une puissante API de planification. De la documentation de notification locale:

Planification du moment où les notifications doivent apparaître - Affiche périodiquement un notification (par intervalles) - Planifie l'affichage d'une notification tous les jours à une heure spécifiée - Planifiez l'affichage d'une notification hebdomadaire un jour et une heure spécifiés - Capacité de gérer lorsqu'un utilisateur a tapé sur une notification lorsque l'application est au premier plan, à l'arrière-plan ou terminée -

Et pour les notifications Push, vous pouvez utiliser Firebase Cloud Messaging ou un signal plugin ou vous pouvez implémenter de manière native via platform-channels

Modifier: vous pouvez également déclencher des notifications en fonction de conditions spécifiques, même si l'application est fermée. Cela peut être achevé en exécutant le code Dart en arrière-plan. Citant le faq officiel:

Puis-je exécuter le code Dart en arrière-plan d'une application Flutter? Oui, vous pouvez exécuter le code Dart dans un processus en arrière-plan sur iOS et Android. Pour Pour plus d’informations, voir l’article Medium Exécution de la fléchette dans le fichier Fond avec des plugins Flutter et Geofencing.

4
a2en

Vous pouvez utiliser les notifications programmées en flottant.

 var scheduledNotificationDateTime =
        new DateTime.now().add(new Duration(seconds: 5));
  var androidPlatformChannelSpecifics =
     new AndroidNotificationDetails('your other channel id',
    'your other channel name', 'your other channel description');
  var iOSPlatformChannelSpecifics =
   new IOSNotificationDetails();
   NotificationDetails platformChannelSpecifics = new 
  NotificationDetails(
   androidPlatformChannelSpecifics, iOSPlatformChannelSpecifics);
  await flutterLocalNotificationsPlugin.schedule(
 0,
 'scheduled title',
 'scheduled body',
 scheduledNotificationDateTime,
 platformChannelSpecifics);
0
PrakashKing

J'ai aussi été confronté à ce problème. Ce sont donc mes leçons 

Dans mon cas: je peux recevoir une notification dans l'état App-Resume ou App-background, mais dans l'état App-Close, je ne reçois pas de notification.

Dans ce cas, notre organisme de notification était:  

{notification: {body: null, title: null}, data: {body: hello, title: world}}

Pour recevoir une notification dans l'état App-Closed, nous avons modifié la notification en 

{notification: {body: abc, title: abc}, data: {url: string, body: string, title: string}}
0
Tushar Pandey