Home    >    Case Studies    >    Android Google Cloud Messaging

Case Study: Android Google Cloud Messaging

Abstract

Google Cloud Messaging for Android (GCM) is a service that allows you to send data from your server to your users' Android-powered device, and also to receive messages from devices on the same connection. The GCM service handles all aspects of queueing of messages and delivery to the target Android application running on the target device. GCM is completely free no matter how big your messaging needs are, and there are no quotas.

Highlight

  • Send data from your server to users' Android-powered devices
  • Send "send-to-sync" messages
  • Send messages with payload
  • Faster, easier GCM setup
  • Upstream messaging over XMPP
  • Seamless multi-device messaging

Technology Used

  • Java
  • Android
  • JDK1.7
  • SQLite
  • Web service
  • GCM server

Development methodology

Send data from your server to users' Android-powered devices

This could be a lightweight message telling your app there is new data to be fetched from the server (for instance, a movie uploaded by a friend), or it could be a message containing up to 4kb of payload data (so apps like instant messaging can consume the message directly).

Send "send-to-sync" messages

A send-to-sync (collapsible) message is often a "tickle" that tells a mobile application to sync data from the server. For example, suppose you have an email application. When a user receives new email on the server, the server pings the mobile application with a "New mail" message. This tells the application to sync to the server to pick up the new email.

Send messages with payload

Unlike a send-to-sync message, every "message with payload" (non-collapsible message) is delivered. The payload the message contains can be up to 4kb.

Faster, easier GCM setup

Streamlined registration makes it simple and fast to add GCM support to your Android app.

Upstream messaging over XMPP

GCM's Cloud Connection Service (CCS) lets you communicate with Android devices over a persistent XMPP connection. The primary advantages of CCS are speed, and the ability to receive upstream messages (that is, messages from a device to the cloud). You can use the service in tandem with existing GCM APIs. Use this form to sign up for CCS.

Seamless multi-device messaging

Maps a single user to a notification key, which you can then use to send a single message to multiple devices owned by the user. Use this form to sign up for User Notifications.

High Quality

  • 1) We used JUnit to do Junit tests for specific interfaces in back-end.
  • 2) We used such as "frequent delivery", "frequent communication", "updated plan" to fit changes, requirement as best practice of agile development. That helps our client to get the final valuable app.

Benefits to the Client

  • Will be able to facilitate the timely message pushed to the mobile client.
  • Do not need to push server management, stable performance, safety and reliability.

Screenshots

android case study