Какое максимальное количество символов может отображаться в push-уведомлениях Android и iOS?
каково максимальное количество символов, которые могут отображаться в push-уведомлении в Android без усечения текста?
в документации для iPhone говорится, что полезная нагрузка уведомления должна быть меньше 256 байт в общей сложности, но я не смог найти что-то подобное для Android.
6 ответов
Android
ограничение размера сообщения в Firebase Cloud Messaging (FCM) в 4 Кбайт. https://firebase.google.com/docs/cloud-messaging/concept-options#notification-messages-with-optional-data-payload
https://firebase.google.com/docs/cloud-messaging/server#choose
ограничение размера сообщения в GCM в 4 Кбайт. (ВОЗРАЖАВШУЮ)
https://developer.android.com/google/gcm/server.html#params
ограничение размера сообщения в C2DM - это 1024 байта. (ВОЗРАЖАВШУЮ)
https://developers.google.com/android/c2dm/#limitations
iOS
для регулярных удаленных уведомлений,максимальный размер 4КБ (4096 байт)
С момента введения iOS 8 изменилось на 2 Кбайта!
https://forums.aws.amazon.com/ann.jspa?annID=2626
С iOS 8 компания Apple представила новые функции, которые позволяют некоторым богатым новый варианты использования для мобильных push-уведомлений-interactive push уведомления, сторонние виджеты и большие (2 КБ) полезные нагрузки. Сегодня, мы рады сообщить о поддержке нового mobile push возможности, объявленные с iOS 8. Мы публикуем новый iOS 8 Пример приложения, демонстрирующего, как эти новые функции могут быть реализованы с SNS, а также реализована поддержка больших полезных нагрузок 2KB.
в iOS ограничение размера составляет 256 байт
Как kabuko сказал, что есть много переменных. Но я тестировал Galaxy S5 и Nexus 5 с Android 4.4 и получил аналогичные результаты. Если вы ищете цифры ballpark я получил
название: 16 симв. Текст: 27 чаров Тикер: 300 + символов (я остановился на 300 символах)
NotificationCompat.Builder builder = new NotificationCompat.Builder(application.getApplicationContext());
Notification n = builder
.setContentTitle("XXXXXXXXXXWWWWWWWWWW")
.setContentText("XXXXXXXXXXWWWWWWWWWWXXXXXXXXXX")
.setTicker("XXXXXXXXXXWWWWWWWWWWXXXXXXXXXXWWWWWWWWWWXXXXXXXXXWWWWWWWWWW...") // cut short for brevity
.setSmallIcon(R.drawable.ic_launcher)
.build();
сообщения C2DM ограничены по размеру до 1024
байт и предназначены для информирования устройства о новых данных, не передавать его.
ссылки:
http://www.vogella.de/articles/AndroidCloudToDeviceMessaging/article.html http://code.google.com/android/c2dm/
Не предполагайте, что только потому, что что-то работает в одну сторону в iOS, так это работает в Android. Как намекает Vineet, в C2DM Android имеет дело только с данными. Он не имеет дело с UI. Добавление уведомления в лоток уведомлений-это обычная вещь, связанная с этим push-уведомлением, но она не связана напрямую. Как отмечается в других ответах,ограничение размера сообщения составляет 1024 байта.
Если вы беспокоитесь о том, сколько символов может поместиться в уведомлении в поднос однако, технически никакой трудный предел. Во-первых, Android не использует шрифты фиксированной ширины (по умолчанию) в трее. Строку из 10 символов как "llllllllll" будет другой, чем ширина строки из 10 символов, как "WWWWWWWWWW". Кроме того, можно выполнять пользовательские представления в уведомлениях, то есть можно изменить размер шрифта, который изменит количество символов.
GCM (Google Cloud Messaging) - 4kb
ref:https://developers.google.com/cloud-messaging/server#choose
FCM (firebase cloud messaging) - 4kb
ref:https://firebase.google.com/docs/cloud-messaging/server#choose