title: BOOT_COMPLETED not working Android
body: <p>First of all, i know there has been hundreds of this kind of question asked, but i've been checking them all for a while and still couldn't find any solution.</p>
  
  <p>I've seen <a href="https://stackoverflow.com/a/19856367/1171484">this answer</a> said BOOT_COMPLETED not send to application unless user launch your application first, after Android version 3.1
  But i still see some applications are doing that, there must be a way. I really need to handle it, otherwise i'm also against to do something without user's interaction.</p>
  
  <p>So here's my AndroidManifest:</p>
  
  <pre><code>&lt;manifest ... &gt;
  
  &lt;!-- to be activated service on boot is completed --&gt;
  &lt;uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /&gt;
  &lt;!-- Keeps the processor from sleeping when a message is received. --&gt;
  &lt;uses-permission android:name="android.permission.WAKE_LOCK" /&gt;
  
  &lt;application ... &gt;
      &lt;!-- to receive data when boot completed --&gt;
      &lt;receiver
          android:name="myPackage.BootReceiver"
          android:enabled="true"
          android:exported="true"
          android:permission="android.permission.RECEIVE_BOOT_COMPLETED" &gt;
          &lt;intent-filter&gt;
              &lt;action android:name="android.intent.action.BOOT_COMPLETED" /&gt;
          &lt;/intent-filter&gt;
      &lt;/receiver&gt;
  &lt;/application&gt;
  
  &lt;/manifest&gt;
  </code></pre>
  
  <p>Thanks in advance.</p>
  
  <p><strong>Edit:</strong> There is no much thing to see in my broadcastreceiver but to whom required here it is:</p>
  
  <pre><code>package myPackage
  public class BootReceiver extends BroadcastReceiver {
  @Override
  public void onReceive(Context context, Intent intent) {
      Utils.LogI("BootReceiver", "BootReceiver received!");
      if (Intent.ACTION_BOOT_COMPLETED.equals(intent.getAction())) {
          // Do my stuff
      }
  }
  }
  </code></pre>