VariusRain
@VariusRain
музыкант-программист-конструктор

Как правильно обеспечивать уведомления в Android приложениях?

Доброго всем времени суток!
Хотелось бы понимать принципы работы уведомлений в современных приложениях.
Документация гугл советует мне использовать Firebase. На сколько я смог понять - это некий облачный сервис, который берёт на себя обязанность связываться с каждым конкретным клиентом для отображения у него уведомлений.
Инициируют эти уведомления, как я понимаю, некие демоны на бэкенде.
Хорошо, звучит логично, но тут возникает вопрос: как это устроено с архитектурной точки зрения на стороне приложения?

У меня приложение само по себе - тонкий клиент, получающий данные с сервера по средствам рест апи.
То есть перманентного коннекта с бэкендом нет. Если бы он был, вопрос отпал бы сам собой.

Соответственно, первая мысль: сделать фоновый сервис, который раз в минуту спрашивает у сервера, нет ли чего нового, и, если есть, то уведомляет об этом пользователя.

Это, вроде как, не самая хорошая с точки зрения экономии энергии и пользовательского трафика (хотя там объём данных и мизерный)

И вот тут я задумался над firebase. Вряд ли эта технология имеет постоянное соединение с облаком... или имеет?
Чем её использование удобнее и логичнее в сравнении с самописным велосипедом?

Очень хотелось бы почитать мнение опытных разработчиков.
  • Вопрос задан
  • 163 просмотра
Решения вопроса 1
zagayevskiy
@zagayevskiy Куратор тега Android
Android developer at Yandex
Когда серверу надо послать пуш, он это делает - пуляет в апишку файрбейза сообщение. Доставку пуша до приложения берёт на себя файрбейз. Достаточно реализовать Broadcast Receiver. Подробнее в документации.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы