Flutter: Push-уведомления, даже если приложение закрыто - PullRequest
0 голосов
/ 01 декабря 2018

Я создал приложение с флаттером, которое работает как напоминание.
Как я могу отображать уведомления пользователю, даже если приложение закрыто?

Ответы [ 3 ]

0 голосов
/ 02 декабря 2018

Вы можете использовать запланированные уведомления во флаттере.

 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 голосов
/ 15 февраля 2019

Я также сталкивался с этой проблемой, так что это мои уроки

В моем случае: я могу получать уведомления в состоянии App-Resume или App-background, но в состоянии App-Close яне получаю уведомления.

В этом случае наш орган уведомления был:

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

Чтобы получать уведомление в закрытом состоянии приложения, мы изменили уведомление на

{notification: {body: abc, title: abc}, data: {url: string, body: string, title: string}}
0 голосов
/ 02 декабря 2018

Для напоминаний я бы рекомендовал Плагин Flutter Local Notifications .Он имеет мощный график планирования API.Из документации локального уведомления:

Планирование, когда должны появляться уведомления - Периодически показывать уведомление (на основе интервалов) - Расписание уведомления, которое будет отображаться ежедневно в указанное время - Расписание отображения уведомленияеженедельно в указанный день и время - возможность обрабатывать, когда пользователь нажимает на уведомление, когда приложение находится на переднем плане, фоне или прекращено

А для push-уведомлений выВы можете использовать Firebase Cloud Messaging или один сигнал плагин или вы можете реализовать нативно через platform-channel

Редактировать: Вы также можете запускать уведомления в соответствии ск определенным условиям, даже если приложение закрыто.Этого можно добиться, запустив код dart в фоновом режиме.Цитата из официального FAQ:

Можно ли запустить код Dart на фоне приложения Flutter?Да, вы можете запускать код Dart в фоновом режиме как на iOS, так и на Android.Для получения дополнительной информации см. Статью Medium Выполнение дротика в фоновом режиме с плагинами Flutter и геозоной.

...