一、概括 : `' V b4 N z" K+ P; x5 E' E 在安卓中,想要实现app开机自动启动,需要实现拦截广播android.permission.RECEIVE_BOOT_COMPLETED,并且需要使用静态注册广播的方法(即在AndroidManifest.xml文件中定义广播); , Y. Q5 V A0 `5 c+ I' P- r二、步骤, t, B2 q: S, T/ K
1. 先在AndroidManifest.xml文件中定义广播和声明权限; / i( g& X6 _' }& [3 i
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); 非常重要,如果缺少的话,程序将在启动时报错;1 X# ?4 d& p1 I. y$ W
3. 编写MainActivity类,代码如下: " @/ ]% u! W' L( Y* C