Welche XMPP-Bibliothek ist heutzutage die beste Wahl für die Android-Entwicklung?
Ich habe die gepatchte Smack-Bibliothek verwendet, wie in vielen anderen Fragen hier in SO vorgeschlagen. Dies ist jedoch eine gepatchte Version der Smack-API von vor zwei Jahren. Und obwohl es im Allgemeinen gut funktioniert, erkunde ich andere, neuere Optionen.
Ich habe mir die offizielle Smack-API angesehen und nach ein wenig Recherche scheint es heutzutage gut zu funktionieren (obwohl ich sie noch nicht in einer echten Anwendung ausprobiert habe).
Es gibt auch eine andere Lösung, auf die ich gestoßen bin : Beems aSMACK-Bibliothek . Beem ist ein ziemlich neuer XMPP-Client für Android und meines Wissens verwenden sie ihre eigene gepatchte Version von aSMACK.
Schließlich gibt es aSMACK, aber auch das wurde seit einiger Zeit nicht mehr aktualisiert (wie auf der Website vorgeschlagen).
Haben Sie weitere Vorschläge oder können Sie erklären, warum ich einen der oben genannten Vorschläge vorziehen sollte?
Antworten:
Klatschen
Smack ist eine Open-Source-XMPP-Clientbibliothek. Seit Version 4.1 läuft es nativ auf Android. Weitere Informationen finden Sie in der "Smack 4.3 Readme" und auf der Smack-Projektseite unter Ignite Realtime .
quelle
Ich bin kürzlich auf eine andere Open-Source-Lösung gestoßen : jaxmpp2
jaxmpp2 zielt auch auf Android (und Java SE) ab. Ich kann eigentlich nichts anderes dazu sagen, da ich jaxmpp2 in meinen Android / XMPP-Projekten nicht verwende. Aber es sieht nach einer gültigen Alternative zu aSmack aus .
quelle
Verwenden Sie qsmack für Android
https://code.google.com/p/qsmack/downloads/list
Es ist das neueste Build für Android
Ich habe an einem Einzel-Chat, Gruppen-Chat, Video-Transfer, Audio-Transfer, zuletzt gesehen, Registrierungsnummer ändern ... fast vollständig, was App. Ich habe viele Plugins auf Openfire erstellt
quelle
Ich möchte libstrophe und jni verwenden. Die Ziele hierfür sind plattformübergreifend, einfach zu bedienen und leistungsfähig. libstrophe ist in c geschrieben, so ist es einfach, android makefile zu schreiben, da die abhängigkeit nur openssl und expat lib ist. In meinem Fall verwende ich openssl und expat lib von libjingle, die bereits auf Android und iOS portieren. (Müssen nur Gyp-Datei auf Android Makefile oder IOS-Projekt portieren).
Unten ist mein Android Makefile
quelle
Sie können die Tigase JaXMPP-Clientbibliothek verwenden - sie ist sehr vielseitig und kann sowohl für JavaSE-Anwendungen als auch für Ihre Android-Entwicklung verwendet werden. Es ist aktiv entwickelt und Tigase Messenger für Android ( Play Store ) basiert darauf.
Es gibt eine Wiki-Seite zur Dokumentation der Basisbibliothek mit einigen Beispielen. Für Details sollten Sie sich an javadocs wenden
quelle
Verwenden von Smack 4.1 Readme und Upgrade-Handbuch
Mit Android Studio 2.3 habe ich kürzlich eine Demo auf sehr einfache Weise implementiert.
-> Fügen Sie einfach Gradle-Abhängigkeit in App-Level-Gradle wie unten hinzu
-> Verbindungskonfiguration konfigurieren
HINWEIS : Rufen Sie dies in AsyncTask oder in einem anderen Hintergrundthread auf
-> Verwenden
isConnected()
undisAuthenticated()
->
ChatManager
Zum Hinzufügen verwendenchatListener
.quelle
Sie können QuickBlox1 kostenlos verwenden.
Es bietet dem XMPP-Server sofort viele Funktionen. Weitere Informationen finden Sie unter http://quickblox.com/developers/Chat
Hier ist ein Beispiel für die Verwendung von QuickBlox mit der aSmack-Bibliothek http://quickblox.com/developers/Android_XMPP_Chat_Sample
quelle