4

Hi I need to develop a fully functional IM solution (like viber or whatsapp) for android. It will have the basic chat features plus many more. Can any one direct me on this. I don't want to re invent the wheel so my target is to use the existing thing as much as possible for the chat server etc (some thing like jabber). If one can direct me for this, or give me some good advice for this it will be a great help.

Edit - I will extend the application future to allow other platform clients like Windows Mobile or iOS clients. In that sense what would be the best technology to implement the server? It must handle real time traffic well. Will I be able to wrap or extend some sort of a XAMPP server to get my work done?

Maxi
  • 285
  • 6
  • 20

3 Answers3

5

This is what you need. http://developer.android.com/google/gcm/index.html

It has everything you need for developing applications like viber, gtalk, instant messaging sistems, global user notifications etc...and its pretty easy to implement.

JanBo
  • 2,925
  • 3
  • 23
  • 32
  • 4
    GCM is a pisspour idea. It says specifically in the docs that this is not meant for a chat application – Anders Metnik Dec 12 '13 at 14:10
  • Thanks a lot for your quick response. I will go through it, thanks again. – Maxi Dec 12 '13 at 14:10
  • Ya, I rush through it as well, another thing is that I may need to user the same server with different platforms (windows mobile/web/iOS etc) in near future. So what will be the solution for that?? Thanks in advance. – Maxi Dec 12 '13 at 14:16
  • Hm, well it said android in the question so this came naturally..i dont know if google offers the same thing for iPhone for example. If it is gonna be multi/cross platform then you will have to find a different vendor for it, or implement your own solution on a server you own. – JanBo Dec 12 '13 at 14:30
  • I'm going to start the ting form android that is why asked the question in that manner, to be specific the fist client would be android the server will be there without any change for all the time ( I mean the technology stack). Is it a good idea to use JAX-WS web service, though I feels they are quite bulky for a real time app. – Maxi Dec 12 '13 at 14:47
2

A good solution if you don't want to reinvent the wheel is to create a Jabber / XMPP client on Android and all other platforms.

Server-side, you can use an OpenFire server for managing the roster and conversations with the Smack Library

Google Cloud Messaging as mentioned Janbo is the best way for sending push notifications to your mobile app.

nbe_42
  • 1,212
  • 1
  • 14
  • 22
  • Thanks! This seams a good solution, I will walk in this path and try to some research. I also encounter the OpenFire server earlier. Will I be able to extend it to implement my own features? – Maxi Dec 12 '13 at 14:50
  • Yeah sure ! My colleague did it for a custom file sharing implementation. – nbe_42 Dec 13 '13 at 08:59
0

What you could look into, is something like Firebase. They have an incredible api for such applications firebase link to android docs

Plus it gives you a backend at the same time for free.

Anders Metnik
  • 6,096
  • 7
  • 40
  • 79
  • It seems quite good though, but what I need is to develop a one that will be mine at the end of the day. So in that sense; I think this one will be not that useful. – Maxi Dec 12 '13 at 14:28