7

Я разрабатываю приложение для Android с использованием Firebase. Может Firebase отправлять push-уведомления автоматически, когда запись вставлена ​​в таблицу, или я должен реализовать свой собственный сервер.Отправить уведомление автоматически с Firebase

+0

Я нахожу firebase очень сложным в создании кампании. У Clevertap есть возвышенный процесс. – therealprashant

+1

Вам придется реализовать его на своем сервере. Firebase не может отправлять уведомление, когда запись добавляется где-то на удаленном сервере, поддерживаемая кем-то другим. – driftking9987

+0

@ driftking9987 правильно, вам придется внедрить сервер, который следит за изменениями в вашей базе данных и затем отправляет уведомления в результате. –

ответ

2

Firebase предоставляет push-уведомление, но не изменения в таблице базы данных. Что вы можете сделать, вы можете создавать слушатели в фоновом режиме и получать уведомление от этих слушателей.

Например, для прослушивания изменений в узле «Пользователь».

FirebaseDatabase myFirebaseRef = FirebaseDatabase.getInstance(); 
DatabaseReference myRef = myFirebaseRef.getReference("User"); 

ValueEventListener valueEventListener = new ValueEventListener() { 
     @Override 
     public void onDataChange(DataSnapshot dataSnapshot) { 

       //put your notification code here 
      } 

     } 

     @Override 
     public void onCancelled(DatabaseError databaseError) { 
      Log.i("FirebaseError", databaseError.getMessage()); 
     } 
    }; 

myRef.addValueEventListener(valueEventListener); 
+2

Хотя этот подход будет работать, долговечные слушатели могут облагать налогом на батарею устройства. Когда ваше приложение находится на переднем плане, слушание прекрасное, но как только ваше приложение находится в фоновом режиме, вы должны закрыть своих слушателей. –

+0

в основном. Это будет работать только для тестирования, но не в реальном сценарии, потому что @ArthurThompson сказал, что это повлияет на батарею и сеть. Лучше всего установить Firebase SDK на свой сервер, где ваши функции будут прослушивать изменения в вашей базе данных с помощью функций firebase и будут отправлять запрос в FCM. – androidXP

+0

Согласны с двумя приведенными выше замечаниями, Firebase Functions - единственный способ пойти. С добавлением новой функции было бы глупо реализовывать любые другие способы обхода. –

4

С 9 марта 2017 года Firebase представил «Firebase функции» .Это помогает вызвать некоторые события по конкретному набору данных changes.These событий может быть затем доступны в консоли Firebase Уведомления, чтобы вызвать толчок уведомление.

Взгляните на https://firebase.googleblog.com/2017/03/introducing-cloud-functions-for-firebase.html

Смежные вопросы