CCS ● Upstream messaging possible ● Permanent connection between servers – But Google keeps messages around a while ● XMPP instead of HTTP ● You cannot use it right away – You have to sign up for it
Benefits ● Reuses Connection – Battery friendly ● More messages in a shorter timeframe ● Android Client easier to develop – You need not care about queuing – No need to check for network availability ● Notification cancellation
Drawbacks ● XMPP is less known than HTTP ● Less information online about XMPP ● I have found only one maintained Java lib ● Less information online about CCS ● Manual ACK / NACK handling ● Proxy servers can be an issue ● No Cloud Services support (as of yet) – Not even Google App Engine!
Recommendation ● It's beta, so stay calm :-) ● Ideal for sending out many messages ● To a very large user base ● And for many return messages from device ● Do not trust the emulator!
What else ● Github links: https://github.com/writtmeyer/gcm_sample https://github.com/writtmeyer/gcm_server ● Blog post in the next days on grokkingandroid.com ● A big thank you to Dennis Geurts!