Отображение виджета в уведомлении в трепете

#android #flutter #notifications #flutter-notification

Вопрос:

Я хочу отобразить виджет в уведомлении с помощью flutter. Я использую пакет awesome_notifications, но я не могу добиться того же.

 Future<void> triggerNotification() async{

    await AwesomeNotifications().createNotification(
      content: NotificationContent(
          id: 1,
          channelKey: 'key1',
          title: 'This is Notification title',
          body: 'This is Body of Noti',
          bigPicture: 'https://protocoderspoint.com/wp-content/uploads/2021/05/Monitize-flutter-app-with-google-admob-min-741x486.png',
          notificationLayout: NotificationLayout.BigPicture
      ),
    );

  }
 

В этом фрагменте есть параметр BigPicture, для которого требуется URL-адрес изображения. Я преобразовал виджет в изображение с помощью repaintBoundary. Есть ли какой-нибудь способ передать виджет изображения вместо URL-адреса? Спасибо.

Ответ №1:

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

   Future<void> triggerNotification() async {
final PickedFile pickedFile = await _picker.getImage(source: ImageSource.camera);
Uri uri = Uri.file(pickedFile.path);
await AwesomeNotifications().createNotification(
  content: NotificationContent(
      id: 1,
      channelKey: 'basic_channel',
      title: 'This is Notification title',
      body: 'This is Body of Noti',
      bigPicture:
          uri.toString(),
      notificationLayout: NotificationLayout.BigPicture),
);
 

}