1. 定义一个BroadcastReceiver 代码: public class BootReceiver extends BroadcastReceiver { public void onReceive(Context ctx, Intent intent) { Log.d("BootReceiver", "system boot completed"); //start activity String action="android.intent.action.MAIN"; String category="android.intent.category.LAUNCHER"; Intent myi=new Intent(ctx,CustomDialog.class); myi.setAction(action); myi.addCategory(category); myi.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); ctx.startActivity(myi); //start service Intent s=new Intent(ctx,MyService.class); ctx.startService(s); } } 2. 配置Receiver的许可,允许接收系统启动消息,在AndroidManifest.xml中: <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/> <receiver android:name=".app.BootReceiver"> <intent-filter> <action android:name="android.intent.action.BOOT_COMPLETED"/> <category android:name="android.intent.category.HOME" /> </intent-filter> </receiver>