Написали сервис для пушей на бэке, настроили события, подключили файрбэйз, настроили пуши в аппках. Пока тестим только на андроид, отправляем из консоли, пуш уходит но не доставляется. Из файэрбэйз такая же ерунда. Они ведут себя очень странно — могут свалиться всей кучей через полчаса, могут не доставиться вообще, могут доставиться моментально. Какие могут быть причины?
Пуш-уведомления - это на самом деле фоновый сервис на мобилке, который периодически подключается к tcp-порту сервака, считывает оттуда пару байт, означающих количество новых уведомлений, и отключается. Если новых уведомлений больше 0 запускает процесс их загрузки и обработки. То есть это не сервис реального времени. Более того проверка происходит не очень часто и не регулярно, чтобы не высаживать батарею слишком быстро. Хотя "могут свалиться всей кучей через полчаса" и "могут не доставиться вообще" - это уже патологическое поведение.
Доставка пушей не гарантирована по времени, да и в целом доставка не гарантирована. Это зависит от многих факторов (заряда батареи на девайсе, стабильности интернета, загруженности сервисов и т.д.). Это нормально.
Странно, но по уровню стабильности доставки пушей другие приложения явно выигрывают. Потому что мы не можем доставить подавляющее большинство, процентов 90
Данияр Кудайбергенов, может быть у вас не до конца грузился скрипт отправки? Если в базе данных много подписчиков, которым надо отправить пуш, без php-демона не обойтись.