Колебание многострочного push-уведомления

#flutter #dart

#колебание #dart

Вопрос:

Я использую пакет flutter_local_notifications для push-уведомлений. Но в панели уведомлений я хочу показывать полное сообщение, независимо от того, сколько строк оно занимает. Это код, который я написал

 void showNotification(message) async {
    var androidPlatformChannelSpecifics = new AndroidNotificationDetails(
      Platform.isAndroid ? 'com.headstrt.app' : 'com.headstrt.app',
      'Flutter chat demo',
      'your channel description',
      playSound: true,
      enableVibration: true,
      importance: Importance.Max,
      priority: Priority.High,
      styleInformation: BigTextStyleInformation(''),
    );

  

Я также указал стиль, но все равно отображаются не все строки.

введите описание изображения здесь

Комментарии:

1. Пытался ввести полный текст в BigTextStyleInformation('') ?

2. На самом деле это отображается вот так

Ответ №1:

В BigTextStyleInformation необходимо указать значение сообщения, передаваемое функции showNotification.

мой собственный код в качестве примера;

   Future<void> _demoNotification(Map<String, dynamic> icerik) async {

  String longdata = icerik["notification"]["body"];

  var bigTextStyleInformation = BigTextStyleInformation(longdata); //multi-line show style

 AndroidNotificationDetails androidPlatformChannelSpecifics =
 AndroidNotificationDetails(

        'push_messages: 0',
        'push_messages: push_messages',
        'push_messages: A new Flutter project',
        importance: Importance.max,
        priority: Priority.high,
        showWhen: false,
        enableVibration: true,
        styleInformation: bigTextStyleInformation);

NotificationDetails platformChannelSpecifics =
NotificationDetails(android: androidPlatformChannelSpecifics);

await flutterLocalNotificationsPlugin.show(
    1,
    icerik["notification"]["title"],
    icerik["notification"]["body"],
    platformChannelSpecifics,
    payload: icerik['data']['routing']);

    }
  

Комментарии:

1. Обратите внимание, что заголовок уведомлений всегда состоит из одной строки и также может быть усечен из-за значка или информации о времени (например, 5min ago ). Мы обнаружили, что ограничение до 30 символов для заголовка почти всегда гарантирует, что оно никогда не будет усечено (но экстремум составляет 11 символов в зависимости от языка).

Ответ №2:

На самом деле это зависит не от вас. В Android по умолчанию для одного уведомления используется on line. Если вы хотите просмотреть все сообщение, вам нужно перетащить уведомление вниз.

Комментарии:

1. Это не работает. Я не могу перетащить уведомление вниз.