有的时候需要在手机开机的时候就启动APP,怎么实现呢?
当开机完成之后,系统会发出一个android.intent.action.BOOT_COMPLETED广播,所以,我们只需要响应这个广播就可以了!
首先在AndroidManifest文件中注册一个receiver,如下所示:
<receiver android:name=".BootBroadcastReceiver" >
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<category android:name="android.intent.category.HOME" />
</intent-filter>
</receiver>
其中BootBroadcastReceiver是我们自定义的一个广播接收器,如下所示:
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
public class BootBroadcastReceiver extends BroadcastReceiver{
@Override
public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
if (intent.getAction().equals(Intent.ACTION_BOOT_COMPLETED)){
Intent sayHelloIntent=new Intent(context,Splash.class);
sayHelloIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(sayHelloIntent);
}
}
}
以上代码就可以实现开机自启动的功能!