My problem is: When I receive "payload" through the intent "com.google.c2dm.intent.RECEIVE", I receive correctly the data "payload" but I receive a registrationId=null and my category is unregistered (in the action "com.google.c2dm.intent.registration").

But in that case you don't need C2DM, you could open an active connection to your server. The whole idea of C2DM is that it is able to trigger your application even when it is not loaded. See http://stackoverflow.com/a/8943715/734687 for a guide.

It is because your account is not registered . are you sure , You entered the Correct C2DM
Registered account in your sender address .Use the Same Package Name that you Entered while Registering to C2DM...