2016-04-26 4 views
-2

ich zur Zeit einen Android-Instant-Messenger/Echtzeit-Chat planen, aber ich bin nicht ganz sicher, ob ich entweder ein Low-Level- (zB TCP) oder ein verwenden sollte Hoch Level Protokoll (zB XMPP).Soll ich ein Low-Level- oder High-Level-Protokoll für einen Instant-Messenger verwenden?

Vielen Dank.

+1

Viele gute Fragen erzeugen eine gewisse Meinung über fachliche Erfahrungen basierte, aber Antworten auf diese Frage werden dazu neigen, fast vollständig zu sein, basierend auf Meinungen, anstatt Fakten, Referenzen oder spezifischen Know-how. –

Antwort

1

Mit TCP allein erhalten Sie nur eine leere, nackte Netzwerkverbindung, über die Sie Daten übertragen müssen. Viel Arbeit voraus.

Mit XMPP haben Sie ein vollständiges Protokoll (Verbindungen, Datenformate, Workflows), auf das Sie sich verlassen können. Außerdem profitieren Sie von vorgefertigten, ausgereiften Software-Implementierungen wie MongooseIM und Tigase für die Server-seitigen und Client-Bibliotheken wie XMPPframework für iOS und Smack für Android.

Sie könnten auch AMQP verwenden oder MQTT Protokolle, oder irgendeine Art von REST-API in Verbindung mit mobiler Push-Benachrichtigungen (APNS und/oder GCM).

Es gibt auch Ring und Matrix, die Sie ansehen könnten.

+0

Sie könnten auch interessiert sein, einen Blick auf die MTProto-Implementierung (das Telegram-Protokoll) zu werfen: https://core.telegram.org/mtproto. – mydaemon

+0

Ich habe auch von GCM gehört. Könnte dies eine Alternative zu XMPP sein? – rkr8

Verwandte Themen