title: BroadcastReceiver can't receive broadcast after reboot when boot completed permission id disabled
body: <p>In XiaoMi 2A, Android Version 4.1, I cann't receive any broadcast after reboot unless I launch my app. XiaoMi disabled boot completed broadcast for apps in default unless users open it.
  I have read a lot of posts here:</p>
  
  <p><a href="https://stackoverflow.com/questions/9952562/broadcast-receiver-not-working-in-ics-if-the-app-is-not-started-atleast-once">Broadcast receiver not working in ICS if the app is not started atleast once</a></p>
  
  <p><a href="http://commonsware.com/blog/2011/07/13/boot-completed-regression-confirmed.html" rel="nofollow noreferrer">http://commonsware.com/blog/2011/07/13/boot-completed-regression-confirmed.html</a></p>
  
  <p><a href="https://stackoverflow.com/questions/9695514/cannot-receive-broadcast-in-ics?rq=1">Cannot receive broadcast in ICS</a></p>
  
  <p>They all said google just made it happen after Android version 3.0. The truth is with my Galaxy Nexus of Android 4.3, the custom broadcast(not boot completed) can be received even app is not launched before after reboot.
  Even with XiaoMi System, broadcast can be received after I open boot completed permission for my app. Can someone tell me why?</p>
  
  <p>Here is the sending Intent:</p>
  
  <pre><code>    Intent intent = new Intent();
      intent.setAction("com.test.test");
      intent.setFlags(Intent.FLAG_INCLUDE_STOPPED_PACKAGES | intent.getFlags());
      context.sendBroadcast(intent);
  </code></pre>
  
  <p>and the receive is below:</p>
  
  <pre><code>  &lt;receiver
          android:name="com.test.TestReceiver"
          android:exported="true"&gt;
      &lt;intent-filter&gt;
          &lt;action android:name="com.test.test"&gt;&lt;/action&gt;
      &lt;/intent-filter&gt;   
    &lt;/receiver&gt;
  
  public class TestReceiver extends BroadcastReceiver {
  
      @Override
      public void onReceive(Context context, Intent intent) {
  
          if (intent.getAction().equals("com.test.test")) {
              Log.e("Chris", "received test action");
          }
      }
  }
  </code></pre>