一、概括4 S3 U5 @+ v) S' S5 o3 h& C
在安卓中,想要实现app开机自动启动,需要实现拦截广播android.permission.RECEIVE_BOOT_COMPLETED,并且需要使用静态注册广播的方法(即在AndroidManifest.xml文件中定义广播); ( I/ y P4 a; R. f 二、步骤: L* E: X. X8 ~- M! o
1. 先在AndroidManifest.xml文件中定义广播和声明权限; & G9 L W) w& b
public class MyReceiver extends BroadcastReceiver
{
public MyReceiver()
{
}
@Override
public void onReceive(Context context, Intent intent)
{
if (intent.getAction().equals("android.intent.action.BOOT_COMPLETED"))
{
Intent i = new Intent(context, MainActivity.class);
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(i);
}
}
}
注意:上面的 i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 非常重要,如果缺少的话,程序将在启动时报错;" h7 S( V7 ]7 r' a j
3. 编写MainActivity类,代码如下: + I$ ~; R9 u3 ^" X' o