I've searched a bit but had a question about the true function of the wakelock with GCM.
Does the wakelock prevent the device from going into a sleep mode that would prevent the network layer from shutting down -- so it can receive a GCM message from the network-level in the first place
Or when GCM is enabled and working (via manifest permissions, properly coded GCM code, etc), it will have a network connection to Google for GCM up regardless, and the wakelock is only needed from a UI or application level to turn the screen back on so you can do other things (interact with user, etc) after receiving it.
Or none/some of the above (please elaborate :)
Thanks geremy