title: Can't register receiver dynamically
body: <p>Can't register receiver dynamically at boot. I have no activity. And I do not want to register it in the service.</p>
  
  <p>Boot Receiver where I register another receiver:</p>
  
  <pre><code>package zzz.zzz.zzz;
  import android.content.BroadcastReceiver;
  import android.content.Context;
  import android.content.Intent;
  import android.content.IntentFilter;
  
  public class AutoStart extends BroadcastReceiver
  {   
      @Override
      public void onReceive(Context context, Intent intent)
      {   
          if ((intent.getAction() != null) &amp;&amp; (intent.getAction().equals("android.intent.action.BOOT_COMPLETED")))
          {
              IntentFilter filter = new IntentFilter(Intent.ACTION_SCREEN_ON);
              filter.addAction(Intent.ACTION_SCREEN_OFF);
              BroadcastReceiver mReceiver = new ScreenReceiver();
              context.registerReceiver(mReceiver, filter);
          }
      }
  }
  </code></pre>
  
  <p>Receiver that I want to register:</p>
  
  <pre><code>package zzz.zzz.zzz;
  import android.content.BroadcastReceiver;
  import android.content.Context;
  import android.content.Intent;
  
  public class ScreenReceiver extends BroadcastReceiver 
  {
      @Override
      public void onReceive(Context context, Intent intent)
      {
          if (intent.getAction().equals(Intent.ACTION_SCREEN_OFF)) 
          {
              // some code            
          }
          if (intent.getAction().equals(Intent.ACTION_SCREEN_ON)) 
          {
              // some code        
          }
      }
  }
  </code></pre>
  
  <p>LogCat:</p>
  
  <pre><code>10-12 15:03:45.849: ERROR/AndroidRuntime(240): Uncaught handler: thread Thread-8 exiting due to uncaught exception
  10-12 15:03:45.859: ERROR/AndroidRuntime(240): android.content.ReceiverCallNotAllowedException: IntentReceiver components are not allowed to register to receive intents
  10-12 15:03:45.859: ERROR/AndroidRuntime(240):     at android.app.ReceiverRestrictedContext.registerReceiver(ApplicationContext.java:126)
  10-12 15:03:45.859: ERROR/AndroidRuntime(240):     at android.app.ReceiverRestrictedContext.registerReceiver(ApplicationContext.java:120)
  10-12 15:03:45.859: ERROR/AndroidRuntime(240):     at zzz.zzz.zzz.RegisterReceiver$1.run(RegisterReceiver.java:18)
  10-12 15:03:46.159: ERROR/ContactsProvider(98): Cannot determine the default account for contacts compatibility
  10-12 15:03:46.159: ERROR/ContactsProvider(98): android.accounts.AuthenticatorException: bind failure
  10-12 15:03:46.159: ERROR/ContactsProvider(98):     at android.accounts.AccountManager.convertErrorToException(AccountManager.java:1096)
  10-12 15:03:46.159: ERROR/ContactsProvider(98):     at android.accounts.AccountManager.access$500(AccountManager.java:74)
  10-12 15:03:46.159: ERROR/ContactsProvider(98):     at android.accounts.AccountManager$BaseFutureTask$Response.onError(AccountManager.java:1003)
  10-12 15:03:46.159: ERROR/ContactsProvider(98):     at android.accounts.IAccountManagerResponse$Stub.onTransact(IAccountManagerResponse.java:69)
  10-12 15:03:46.159: ERROR/ContactsProvider(98):     at android.os.Binder.execTransact(Binder.java:287)
  10-12 15:03:46.159: ERROR/ContactsProvider(98):     at dalvik.system.NativeStart.run(Native Method)
  10-12 15:03:46.879: ERROR/MediaPlayerService(31): Couldn't open fd for content://settings/system/notification_sound
  10-12 15:03:46.889: ERROR/MediaPlayer(52): Unable to to create media player
  </code></pre>