Ограничения на длину сообщения в пуш-уведомлениях

Редакция Tproger выяснила ограничения на количество символов в заголовках и сообщениях пуш-уведомлений для разных платформ и браузеров

Мы перебрали несколько различных комбинаций операционных систем и браузеров и для каждой из них сделали скриншоты двух уведомлений: одно из них содержало текст «Lorem ipsum…», другое — в основном заглавные буквы «Щ». Это позволило нам вычислить длину в среднем и в худшем случае соответственно.

TL;DR

Самые строгие ограничения у Firefox под Android (в случае использования текста полностью из букв «Щ»): 14 символов на заголовок уведомления и 19 — на сообщение. Для «среднего» текста «Lorem ipsum» ограничения составили 29 и 35 символов соответственно.

Уместить в такой объем полноценную пару заголовок/сообщение довольно сложно, поэтому рекомендуем вам разбивать единственное предложение на две части: первую писать в заголовке, вторую — в сообщении. Например, так:

Причем обратите внимание, что многоточие — именно единый символ, имеющий суммарно меньшую ширину, чем три отдельных символа-точки.

Более конкретная методика подбора подходящей длины описана в конце материала после результатов.

 

Результаты

Windows 8/10

Браузеры под Windows используют не нативные уведомления, а свои собственные, что позволяет им «диктовать свои правила».

Google Chrome

  • «Lorem ipsum…»:
    • Заголовок: 65
    • Сообщение: 133

  • «ЩЩЩ…»:
    • Заголовок: 35
    • Сообщение: 62

Mozilla Firefox

  • «Lorem ipsum…»:
    • Заголовок: 50
    • Сообщение: 200

  •  «ЩЩЩ…»:
    • Заголовок: 192
    • Сообщение: 200

Как вы увидите здесь и далее, собственные уведомления Mozilla работаю несколько странно в вопросах отображения беспробельных сообщений.

Очень плохой совет Если нужно вместить больше информации в уведомление на Firefox, используйте неразрывные пробелы, это тоже работает, ограничения те же:

Однако учтите, что те, кто так делает, после смерти варятся в одном котле с теми, кто использует автовоспроизведение аудио на веб-страницах.

macOS

На macOS для всех протестированных нами браузеров используются системные уведомления.

Google Chrome

Системные уведомления в Chrome стали использоваться не так давно, раньше браузер от Google использовал собственные уведомления, так же, как и на Windows.

Если вы используете кнопки в уведомлениях, то учтите, что пользователь увидит их не сразу, для этого ему будет необходимо навести указатель на уведомление: при наведении появятся пункты «Закрыть» и «Подробнее» — и лишь после клика на последний будут показаны кнопки пуш-уведомления.

  • «Lorem ipsum…»:
    • Заголовок: 36
    • Сообщение: 39

  • «ЩЩЩ…»:
    • Заголовок: 18
    • Сообщение: 20

Mozilla Firefox

  • «Lorem ipsum…»:
    • Заголовок: 33
    • Сообщение: 35

  • «ЩЩЩ…»:
    • Заголовок: 16
    • Сообщение: 18

Кстати, нативные уведомления macOS успешно обрабатывают беспробельные сообщения.

Safari

Текст уведомления в Safari размещается на двух строках.

  • «Lorem ipsum…»:
    • Заголовок: 43
    • Сообщение: 91

  • «ЩЩЩ…»:
    • Заголовок: 22
    • Сообщение: 49

Android

В распоряжении нашей команды оказались только смартфоны Xiaomi с оболочкой MIUI. Уведомления, само собой, нативные.

Google Chrome

  • «Lorem ipsum…»:
    • Заголовок: 31
    • Сообщение: 50

  • «ЩЩЩ…»:
    • Заголовок: 15
    • Сообщение: 24

Mozilla Firefox

  • «Lorem ipsum…»:
    • Заголовок: 29
    • Сообщение: 39

  • «ЩЩЩ…»:
    • Заголовок: 14
    • Сообщение: 19

Ubuntu

Google Chrome

  • «Lorem ipsum…»:
    • Заголовок: 55
    • Сообщение: 98

  • «ЩЩЩ…»:
    • Заголовок: 27
    • Сообщение: 48

Mozilla Firefox

  • «Lorem ipsum…»:
    • Заголовок: 40
    • Сообщение: 200

  • «ЩЩЩ…»:
    • Заголовок: 192
    • Сообщение: 200

Firefox продолжил в своем репертуаре 🙂

Opera

В Opera длина заголовка компенсируется размером сообщения — таким образом, в наших тестах в уведомление вместился только заголовок, а сообщение полностью было скрыто. Цвет уведомлений совпадает с цветовой гаммой сайта.

  • «Lorem ipsum…»:
    • Заголовок: 101
    • Сообщение: 0

  • «ЩЩЩ…»:
    • Заголовок: 50
    • Сообщение: 0

Что делать с этой информацией?

Изучите статистику пользователей Интернета по операционным системам и браузерам. Например, на statcounter: операционные системы и браузеры соответственно. Если найдете где-либо график, где вся аудитория разбита не по каждому отдельному показателю, а по парам ОС/браузер — то совсем замечательно, поделитесь им с нами обязательно в комментариях.

Для простоты можно считать приведенные показатели независимыми случайными величинами и для вычисления вероятности попадания пользователя в пересечение ОС/браузер — перемножать их. Скажем, если Chrome используют 55% аудитории, а Windows — 36%, то можно считать, что пересечение пользователей Windows+Chrome составляет 0.55 * 0.36 ≈ 20% от общей аудитории Интернета. Однако лучше получить более точные данные из каких-либо метрик, прикрученных к вашему сайту.

Определитесь, какой процент пользователей вы хотите покрыть, затем выберите подходящие группы пользователей ОС/браузера и найдите вычисленные нами длины сообщений на этой странице — возьмите минимальные, и тогда все желаемые вами пользователи точно получат ваше сообщение в полном объеме. Например, если вам достаточно 50% аудитории, давайте выберем все комбинации операционных систем (которые в сумме дадут ≈ 100%) с Chrome (занимает ≈ 55% рынка). В таком случае ограничение для вас составит 15 символов для заголовка (со стороны Android) и 20 символов для сообщения (со стороны macOS).

Чтобы учесть 100% аудитории приведенных на этой странице конфигураций, используйте ограничение в 14 и 19 символов соответственно (таковы ограничения на длину сообщения из букв Щ в Firefox на Android).