2012-05-18 22 views
8

Voglio creare un'applicazione di chat per Android e voglio conoscere il modo migliore per farlo. La mia prima opzione è utilizzare una connessione socket tra il telefono e il server in modo che il server possa inviare nuovi messaggi al telefono.Sviluppo di applicazioni per chat Android

La seconda opzione è utilizzare C2DM.

Un'applicazione di chat come succede a come viene implementato con socket o utilizzando C2DM?

Esiste un modo migliore per creare un'applicazione del tipo precedente?

Grazie.

risposta

3

asmack e OpenFire è il modo più semplice. Non c'è bisogno di reinventare la ruota.

Ma se si desidera RTW, aprire un socket mentre l'app è in primo piano e utilizzare C2DM quando non lo è. BTW C2DM è un PITN con cui lavorare, quindi considera di utilizzare un servizio come Urban Airship.

+0

Attualmente sto imparando di più su Android, quindi mi piace reinventare la ruota :). Ho letto su XMPP e sembra essere ampiamente utilizzato. Mi chiedo come funzioni XMPP, da quello che leggo XMPP è una connessione TCP/IP, quindi la mia domanda è come spinge il messaggio quando l'applicazione Android viene chiusa come fanno i servizi SMS. Grazie .. – Catalin

+0

Il client XMPP mantiene una connessione socket al server, anche quando l'applicazione viene chiusa. In Android, è possibile chiudere un'app ma non arrestare tutti i suoi processi. –

7

C2DM (ora noto come GCM) non sarà una buona scelta per la creazione di un'applicazione di chat. Crea una connessione socket con il server quando l'app è in primo piano, quando l'app è in background utilizza GCM per scopi di notifica push. Dovrai ospitare i tuoi server ma ti suggerirei di non reinventare la ruota e usare qualcosa come Applozic (https://www.applozic.com) chat sdk che ti darà caratteristiche come whatsapp e molto altro in un'ora.

Problemi correlati