Saturday, November 22, 2014

Android: start app on reboot

In this tutorial we will learn how to start an app (Activity or Service) on Android reboot.



Step: Android manifest

        <receiver
                android:name=".BootBroadcastReceiver"
                android:enabled="true"
                android:exported="true"
                android:label="Start SMS on boot">
            <intent-filter>
                <action android:name="android.intent.action.BOOT_COMPLETED"/>
            </intent-filter>
        </receiver>

    </application>

    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
</manifest>



Step: BroadcastReceiver

package com.chicagoandroid.android.app.sms;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
/**
 * Created by uki on 11/22/14.
 */
public class BootBroadcastReceiver extends BroadcastReceiver {
   @Override
   public void onReceive(Context context, Intent intent) {
      if (Intent.ACTION_BOOT_COMPLETED.equals(intent.getAction())) {
         Intent serviceIntent = new Intent(context, MainActivity.class);
         context.startService(serviceIntent);
      }
   }
}