How to send BOOT COMPLETED Intent / How to simulate boot complete intent order ?

When Android is booting ( Or you powered ON android first time or rebooted ), and when it has completed booting, Android sends a broadcast intent BOOT_COMPLETED to let all the applications, services know that now everything is setup and android booting has been completed, so we can start any other services , applications.

If our package name is com.android.TestService and Broadcast receiver intent is com.android.TestBroadcastReceiver

use below command to send boot completed intent manually from adb shell,

adb shell am broadcast -a android.intent.action.BOOT_COMPLETED -n com.android.TestService/com.android.TestService.TestBroadcastReceiver 

Refer code like below from AndroidManifest.xml to identify name of Broadcast receiver,

[bash] <receiver android:name="com.android.TestBroadcastReceiver" > <intent-filter> <action android:name="android.intent.action.BOOT_COMPLETED" /> </intent-filter> </receiver> [/bash]

And the TestBroadcastReceiver class needs to defined as,

[bash] package com.android.TestService; import android.content.Context; import android.content.Intent; import android.content.BroadcastReceiver; import android.util.Log; public class TestBroadcastReceiver extends BroadcastReceiver { public static final String TAG = "TestService:TestBroadcastReceiver"; @Override public void onReceive(final Context context, Intent intent) { if (intent.getAction().equals("android.intent.action.BOOT_COMPLETED")) { Log.d(TAG, "onReceive: boot completed"); } } } [/bash]

If you want to know, how this code can be used to receive an On Boot complete intent, you can refer to “Understanding Android Services with Example”

Leave a Comment