I have seen the "GCM Architectural Overview" from http://developer.android.com/guide/google/gcm/gcm.html. The doc says that when an android app registers for GCM, the onRegistered(Context c,String regId) is called containing the regId which then user sends to its server. The doc says that "Google may periodically refresh the registration ID". My question is how should I know that Google has refreshed regId for user?
One thing that comes into my mind is that when id is refreshed, it again fires the com.google.android.c2dm.intent.REGISTRATION intent resulting in to a call to onRegistered() method. Am I right? If so, then I can resend regId to my server.