The BootReceiver never called even if the system was boot up using this command:
adb shell am broadcast -a android.intent.action.BOOT_COMPLETED -n com.android.canbedeleted.test/.BootReceiver
Permission I have put in the manifest:
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="1" android:versionName="1.0" package="com.android.canbedeleted.test">
<uses-sdk android:minSdkVersion="15" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<application android:label="test">
<receiver android:name="test.Droid.BootReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
</application>
The receiver tag i have tried removed it but don't see any different.
[BroadcastReceiver]
[IntentFilter (new string[] { Intent.ActionBootCompleted }, Priority = (int)IntentFilterPriority.HighPriority)]
public class BootReceiver : BroadcastReceiver
{
public override void OnReceive(Context context, Intent intent)
{
System.Diagnostics.Debug.WriteLine ("*********************************** Broadcast Received *********************************");
Toast.MakeText(context, "Received intent!", ToastLength.Short).Show();
//Intent message = new Intent();
//message.AddFlags(ActivityFlags.NewTask);
//message.SetClass(context, typeof(KeyboardService));
//context.StartService(intent);
}
}
Even if I tried to type the cmd like this, i will have stack trace as below. The test.Droid is the namespace of the class.
adb shell am broadcast -a android.intent.action.BOOT_COMPLETED -n com.android.canbedeleted.test/test.Droid.BootReceiver
StackTrace
Java.Lang.RuntimeException: Unable to instantiate receiver test.Droid.BootReceiver: java.lang.ClassNotFoundException: Didn't find class "test.Droid.BootReceiver" on path: DexPathList[[zip file "/data/app/com.android.canbedeleted.test-8.apk"],nativeLibraryDirectories=[/data/app-lib/com.android.canbedeleted.test-8, /vendor/lib, /system/lib]] ---> Java.Lang.ClassNotFoundException: Didn't find class "test.Droid.BootReceiver" on path: DexPathList[[zip file "/data/app/com.android.canbedeleted.test-8.apk"],nativeLibraryDirectories=[/data/app-lib/com.android.canbedeleted.test-8, /vendor/lib, /system/lib]] at java.lang.ClassNotFoundException: Didn't find class "test.Droid.BootReceiver" on path: DexPathList[[zip file "/data/app/com.android.canbedeleted.test-8.apk"],nativeLibraryDirectories=[/data/app-lib/com.android.canbedeleted.test-8, /vendor/lib, /system/lib]] at at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:67) at at java.lang.ClassLoader.loadClass(ClassLoader.java:497) at at java.lang.ClassLoader.loadClass(ClassLoader.java:457) at at android.app.ActivityThread.handleReceiver(ActivityThread.java:2513) at at android.app.ActivityThread.access$1800(ActivityThread.java:161) at at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1341) at at android.os.Handler.dispatchMessage(Handler.java:102) at at android.os.Looper.loop(Looper.java:157) at at android.app.ActivityThread.main(ActivityThread.java:5356) at at java.lang.reflect.Method.invokeNative(Native Method) at at java.lang.reflect.Method.invoke(Method.java:515) at at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1265) at at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1081) at at dalvik.system.NativeStart.main(Native Method) --- End of inner exception stack trace --- at java.lang.RuntimeException: Unable to instantiate receiver test.Droid.BootReceiver: java.lang.ClassNotFoundException: Didn't find class "test.Droid.BootReceiver" on path: DexPathList[[zip file "/data/app/com.android.canbedeleted.test-8.apk"],nativeLibraryDirectories=[/data/app-lib/com.android.canbedeleted.test-8, /vendor/lib, /system/lib]] at at android.app.ActivityThread.handleReceiver(ActivityThread.java:2518) at at android.app.ActivityThread.access$1800(ActivityThread.java:161) at at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1341) at at android.os.Handler.dispatchMessage(Handler.java:102) at at android.os.Looper.loop(Looper.java:157) at at android.app.ActivityThread.main(ActivityThread.java:5356) at at java.lang.reflect.Method.invokeNative(Native Method) at at java.lang.reflect.Method.invoke(Method.java:515) at at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1265) at at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1081) at at dalvik.system.NativeStart.main(Native Method) at Caused by: java.lang.ClassNotFoundException: Didn't find class "test.Droid.BootReceiver" on path: DexPathList[[zip file "/data/app/com.android.canbedeleted.test-8.apk"],nativeLibraryDirectories=[/data/app-lib/com.android.canbedeleted.test-8, /vendor/lib, /system/lib]] at at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:67) at at java.lang.ClassLoader.loadClass(ClassLoader.java:497) at at java.lang.ClassLoader.loadClass(ClassLoader.java:457) at at android.app.ActivityThread.handleReceiver(ActivityThread.java:2513) at ... 10 more