Push-уведомления с веб-сервера в приложение Android

#java #android #firebase #spring-mvc #websocket

#java #Android #firebase #spring-mvc #websocket

Вопрос:

Привет всем, кто просматривает этот вопрос. Я думаю, что этот вопрос может быть довольно абстрактным, но я не смог найти правильный ответ в Google.

Я пытаюсь создать приложение, подобное заказу Starbucks Siren.

Наши приложения для Android сделаны на Android-Java , и мы также разрабатываем веб-сервер, который также написан на Java , используя Spring-MVC .

Как только клиент делает заказ с помощью этого приложения (которое предназначено для клиентов), я хочу, чтобы push-уведомления отображались в Store-Owner-Application . Я думал об использовании WebSocket, но является ли Firebase отличной альтернативой websocket в этом случае? Я никогда раньше не использовал ни WebSocket, ни Firebase. Просто прошу несколько советов. Спасибо 🙂

Ответ №1:

в простых случаях Firebase является гораздо лучшей альтернативой самостоятельной реализации с помощью WebSocket.

Это потому, что в Firebase уже есть постоянно разряжающий батарею открытый сокет для обработки уведомлений, и поскольку большинство приложений используют его, а не создают новый сокет, это помогает экономить заряд батареи и другие ресурсы.

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

  1. Если батарея разряжена
  2. если устройство недавно получило много push-уведомлений

Если вам нужно простое 99%-ное решение для отправки push-уведомлений, которое легко реализовать и не будет тратить заряд батареи — используйте Firebase.

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

Комментарии:

1. Я должен создавать содержимое push-уведомлений путем синтаксического анализа строки JSON. Возможно ли это сделать с помощью firebase? Я никогда раньше не использовал firebase..

2. конечно. Firebase (или, в данном случае, Firebase Cloud Messaging — FCM) — это просто инструмент, который позволяет отправлять сообщения с вашего сервера вашим мобильным клиентам. Вы можете отправить любую строку, которую вы хотите, в любом формате, который вы хотите, проанализируйте ее в своем клиенте и делайте с ней все, что захотите