Search code examples
javaandroidandroid-serviceandroid-c2dmgoogle-cloud-messaging

How to keep Listening for Push Notifications on Android in the background


I am working on Push Notifications in Android. Now the issue is that I want to keep running my Push Notifications on the back ground as soon as the app start because I have no idea when the server will push the data to the devices.

The main requirement is that our corporate app is having more than 10 activities and based on the notification received, I have to bring the related activity on the foreground so that user can preform action on that or do some silent action in the background regardless the activity is in foreground.

Can somebody suggest how can I implement this type of requirement. Do I need to do it in a Service.

Thanks


Solution

  • An Android application on an Android device doesn't need to be running to receive messages. The system will wake up the Android application via Intent broadcast when the message arrives, as long as the application is set up with the proper broadcast receiver and permissions.

    take look at this;

    http://developer.android.com/guide/google/gcm/gcm.html

    when message received from gcm server

    onMessage(Context context, Intent intent): method of GCMIntentService gets fire,

    so you write your code there

    take sample example from here

    https://github.com/ketanpatel25/GCM-Demo/tree/master/gcm