title: GCM with custom broadcastreceiver
body: <p>I am implementing gcm notifications in my application. Because I use my code to generate lot of application with different package names I cannot use standard mypackage.GCMIntentService name. When generating applications I do changes only in Manifest and change imports of my R class. So I impelented my own BroadcastReceiver</p>
  
  <pre><code>public class GCMReceiver extends GCMBroadcastReceiver {
    @Override
    protected String getGCMIntentServiceClassName(Context context) {
      return GCMIntentService.class.getName();
    }
  }
  </code></pre>
  
  <p>to return name of GCMIntentService regardless of package name.</p>
  
  <p>Here is my manifest:</p>
  
  <pre><code>    &lt;uses-permission android:name="android.permission.INTERNET" /&gt;
      &lt;uses-permission android:name="android.permission.GET_ACCOUNTS" /&gt;
      &lt;uses-permission android:name="android.permission.WAKE_LOCK" /&gt;
  
      &lt;uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" /&gt;
      &lt;permission
          android:name="org.rferl.permission.C2D_MESSAGE"
          android:protectionLevel="signature" /&gt;
  
      &lt;uses-permission android:name="org.rferl.permission.C2D_MESSAGE" /&gt;
  
  
      &lt;service
          android:name="org.rferl.service.GCMIntentService"
          android:enabled="true" /&gt;
  
  
     &lt;receiver
          android:name="org.rferl.GCMReceiver"
          android:enabled="true"
          android:permission="com.google.android.c2dm.permission.SEND" &gt;
          &lt;intent-filter&gt;
  
              &lt;!-- Receives the actual messages. --&gt;
              &lt;action android:name="com.google.android.c2dm.intent.RECEIVE" /&gt;
              &lt;!-- Receives the registration id. --&gt;
              &lt;action android:name="com.google.android.c2dm.intent.REGISTRATION" /&gt;
  
              &lt;category android:name="org.rferl" /&gt;
          &lt;/intent-filter&gt;
      &lt;/receiver&gt;
  </code></pre>
  
  <p>Everything works fine, I can register, unregister, receive messages. But when application is  not runnig no GCMIntentService.onMessage is not called. Am I missing something in my manifest? Why system did not start service?</p>