Ich brauche einige Klarstellungen.One to One Android Chat mit Firebase
Ich benutze Firebase Echtzeitdatenbank.
Jetzt muss ich einen Echtzeit-Chat zwischen zwei Android-Geräten implementieren. Ich brauche auch Push-Benachrichtigungen.
Also, die Lösung auf Basis von Echtzeit-Datenbank ist da zu fallen, wenn die App nicht läuft, wird es nicht handhaben die Ereignis onChildAdded.
Ich lese auf der Dokumentation, dass ich mein Ziel erreichen kann, mit der Upstream-Nachricht vom Gerät zum Server.
Jetzt ist es auch geschrieben, dass wir einen App-Server benötigen.
Ich will nur die Notwendigkeit des Anwendungsservers (XMPP oder HTTP) geklärt werden, und es ist, der gesamte Fluss der Nachricht M1 von der Vorrichtung A gesendet wird, und die Meldung auf dem Gerät B.
In meiner Meinung nach der App-Server als Mann in der Mitte handeln sollte, so:
A ---> XMPP SERVER ---> FCM
FCM ---> XMPP SERVER --- > B
Ist das der Fluss? Auf der Dokumentation kann ich nicht verstehen, ob ich Recht habe oder nicht. Wenn ja, wie sende ich eine Nachricht vom FCM zurück zum XMPP Server? Die Benachrichtigung wird von FCM an den Client gesendet oder von XMPP Server?
Bitte jemand klären mich.
Andere Lösung von mir dachte: Da ich wirklich mächtig Feuerbasis Echtzeit-Datenbank finden, dachte ich, diese Lösung, um das Problem zu gehen:
- Neues App-Server die für
onChildAdded
hört und wenn es senden ändert eine Benachrichtigung an das Client-Gerät. - Erstellen eines Hintergrunddienstes in der Client-App, der auf
onChildAdded
hört und bei Bedarf eine Benachrichtigung erstellt.
Sogar alle mag ich diese Lösungen nicht. Ich möchte nur den Standard und den richtigen Weg verstehen, um mein Ziel zu erreichen.
Sie müssen keinen App-Server behalten, während Sie die Firebase-Echtzeitdatenbank verwenden. Das ist das ganze Konzept von Firebase, bei dem Sie keinen Backend-Server für die Kommunikation mit unserer Datenbank benötigen. Ich weiß nicht genau, warum Sie auch eine Push-Benachrichtigung implementieren müssen, wenn Sie an einer Chat-Anwendung arbeiten, die auf Basis von Firebase implementiert wird. Sie möchten eine Benachrichtigung anzeigen, wenn eine neue Nachricht empfangen wird? –
Sie können diesen Link sehen. Dies könnte helfen. https://firebase.googleblog.com/2016/08/sending-notifications-between-android.html –
@ReazMurshed: Ich muss Push-Benachrichtigung implementieren, wenn die App nicht ausgeführt wird. Mit der einzigen Echtzeitdatenbank ist dies nicht möglich. Wenn die App nicht ausgeführt wird, kann sie das Ereignis nicht verarbeiten. Ich las den Blog. Ich verstehe, was geschrieben wird, aber ich denke, das ist nicht die beste Lösung, da die Dokumentation auf der Firebase-Site vorschlägt, Firebase Cloud Messaging und einen App Server zu verwenden, um zu erreichen, was ich brauche. – xcsob