21

I used flutter_local_notifications: ^0.7.1+3 in my Flutter app to push schedule notifications. All is well in this but the problem in my notification body is that it shows just one line of text, and I can't expand or stretch notification to show all the notification body text.

This is my try:

class NotificationUtil {
  final notifications = FlutterLocalNotificationsPlugin();
  final int checkOutNotifyId = 0;

  NotificationUtil(BuildContext context) {
    final settingsAndroid = AndroidInitializationSettings('ic_notify_icon');
    final settingsIOS = IOSInitializationSettings(
        onDidReceiveLocalNotification: (id, title, body, payload) =>
            onSelectNotification(context));
    notifications.initialize(
        InitializationSettings(settingsAndroid, settingsIOS),
        onSelectNotification: (context) async => onSelectNotification);
  }

  Future<void> showCheckOutNotify([int maximumCheckoutHours]) async {
    await notifications.periodicallyShow(
        checkOutNotifyId,
        AttendanceConstants.SCHEDULE_NOTIFICATION_TITLE,
        AttendanceConstants.SCHEDULE_NOTIFICATION_BODY +
            '$maximumCheckoutHours Hour/s of your attendance',
        RepeatInterval.Hourly,
        _ongoing);
  }

  NotificationDetails get _ongoing {
    final androidChannelSpecifics = AndroidNotificationDetails(
      'your channel id',
      'your channel name',
      'your channel description',
      importance: Importance.Max,
      priority: Priority.High,
      ongoing: true,
    );
    final iOSChannelSpecifics = IOSNotificationDetails();
    return NotificationDetails(androidChannelSpecifics, iOSChannelSpecifics);
  }
Philippe Fanaro
  • 6,148
  • 6
  • 38
  • 76
mohmdezeldeen
  • 396
  • 1
  • 3
  • 11

2 Answers2

49

add [ BigTextStyleInformation('') ] in [ AndroidNotificationDetails() ]

NotificationDetails get _ongoing {
    final androidChannelSpecifics = AndroidNotificationDetails(
      'your channel id',
      'your channel name',
      'your channel description',
      importance: Importance.Max,
      priority: Priority.High,
      ongoing: true,

      styleInformation: BigTextStyleInformation(''),
    );
ahmed el-shafei
  • 610
  • 7
  • 10
1

If anybody is here for the package awesome_notifications, use:

notificationLayout: NotificationLayout.BigText,

inside notification content.

Manbus
  • 706
  • 4
  • 9