Подтвердить что ты не робот

Android push-уведомление без firebase

Я хочу отправить Android push-уведомление выбранному пользователю без использования gcm или firebase. Приложение уже собрано без FireBase. Теперь мне нужно добавить push-уведомление.

Вопрос:

  • Как это возможно без firebase?

На самом деле я хочу функцию, которая, когда администратор обновляет значение в одном поле в таблице базы данных конкретного пользователя, этот пользователь получит push-уведомление об обновлении. Как это возможно?

4b9b3361

Ответ 1

Способ заключается в создании пользовательской службы https://developer.android.com/reference/android/app/Service.html, которая удерживает соединение через сокет или опрашивает некоторый удаленный сервер с интервалами.

Но я полагаю, что служба Firebase является более продвинутой и оптимизированной по потреблению батареи и, в частности, при использовании спящего режима. Это не тривиально, чтобы сделать сервис, который будет иметь быстрый отклик и потребление ресурсов процессора. Я думаю, что разработка пользовательских сервисов приведет к нативному (C++) кодированию библиотек подпрограмм сети.

Кроме того, примите во внимание, что Firebase предоставляет собственную службу аутентификации с возможностью плавного преобразования вашего анонимного пользователя в зарегистрированного. Есть много плюсов сервисов Firebase. И минусы: ваши пользователи должны установить Сервисы Google Play, если ваше приложение будет расти - вы заплатите Firebase.

Посмотрите здесь Android push-уведомления без службы Google

Ответ 2

Firebase чрезвычайно удобна для пользователя и делает для вас много . Конечно, возможно направить уведомление выбранным пользователям, но требует определенного объема знаний. Что касается того, как; Вам в значительной степени необходимо настроить сервер, который получает запросы и отправляет данные на определенные устройства с помощью токенов. Вы также должны заботиться о безопасности. Удачи!

Ответ 3

Это возможно с использованием VAPID-аутентификации.

Google для VAPID, и вы найдете очень извилистый путь, который может привести к ответу, который вы ищете.