Подтвердить что ты не робот

Android Notification - Показать полное сообщение

Мое приложение Android должно отправлять короткие оповещения широкой группе людей. Очевидное место для этого - в центре уведомлений. Полное уведомление отображается в тикере без проблем, но в центре уведомлений пользователь может видеть только первые слова пары, а затем elipsis. Уведомления не долго, всего 10-15 слов. Как заставить текст обернуть новую строку?

Мой код для создания уведомлений находится здесь

    NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(this)
    .setSmallIcon(R.drawable.splash)
    .setContentTitle("Student Engauge")
    .setContentText(extras.getString("message"))
    .setAutoCancel(true)
    .setTicker(extras.getString("message"));
    final int notificationId = 1;
    NotificationManager nm = (NotificationManager) getApplicationContext()
          .getSystemService(Context.NOTIFICATION_SERVICE);
    nm.notify(notificationId, mBuilder.build());
4b9b3361

Ответ 1

Чтобы показать большой фрагмент текста, используйте BigTextStyle. Вот пример кода, приведенный в BigTextStyle. Это уведомление будет содержать одну строку текста и при необходимости расширится до большего количества строк.

Notification noti = new Notification.Builder()
 .setContentTitle("New mail from " + sender.toString())
 .setContentText(subject)
 .setSmallIcon(R.drawable.new_mail)
 .setLargeIcon(aBitmap)
 .setStyle(new Notification.BigTextStyle()
     .bigText(aVeryLongString))
 .build();

Для библиотеки поддержки android

Notification noti = new Notification.Builder()
 .setContentTitle("New mail from " + sender.toString())
 .setContentText(subject)
 .setSmallIcon(R.drawable.new_mail)
 .setLargeIcon(aBitmap)
 .setStyle(new NotificationCompat.BigTextStyle()
     .bigText(aVeryLongString))
 .build();

Ответ 2

Для устройств Android 4.1 и более поздних версий большой вид является наиболее подходящим решением для отображения большого количества текста. Для устройств с предварительным 4.1 вы можете использовать настраиваемый макет уведомлений, чтобы показать больше данных, таких как упомянутый здесь. Но вы должны иметь в виду две вещи:

  • Из официальной документации Этот ответ содержит дополнительную информацию об ограничении пользовательских макетов уведомлений