Android开机自启动
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);
- }
- }
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"/>
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
3.配置Receiver,可以接收系统启动消息,在AndroidManifest.xml中
- <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>
<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>
4.启动模拟器,可以看到系统启动后,弹出一个对话框。
Android开机启动应用设置指南
本文介绍了如何在Android系统启动时自动运行程序。首先,创建一个BootReceiver继承BroadcastReceiver,并在onReceive方法中启动Activity和服务。然后,在AndroidManifest.xml中添加必要的权限RECEIVE_BOOT_COMPLETED和配置Receiver来监听BOOT_COMPLETED事件。当模拟器启动时,会看到一个对话框弹出,表明设置成功。
192

被折叠的 条评论
为什么被折叠?



