背景知识:当Android启动时,会发出一个系统广播,内容为ACTION_BOOT_COMPLETED,它的字 符串常量表示为 android.intent.action.BOOT_COMPLETED。只要在程序中“捕捉”到这个消息,再启动之 即可。记住,Android框架说:Don""t call me, I""ll call you back。我们要做的是做好接收这个消息的准备,而 实现的手段就是实现一个BroadcastReceiver。 1、界面Activity,BootStartDemo.java文件 复制代码 代码如下: public class BootStartDemo extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // 无title requestWindowFeature(Window.FEATURE_NO_TITLE); // 全屏 getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); setContentView(R.layout.main); new Thread() { public void run() { try { /* 8秒后关闭页面*/ sleep(10000); } catch (Exception e) { e.printStackTrace(); } finally { finish(); // 关闭页面 } } }.start();
} }
这段代码很简单,当Activity 启动时,会显示TextView,用它显示你想显示的字样,并且这个页面只显示10秒后消失。 2、接收广播消息:BootBroadcastReceiver.java 复制代码 代码如下: public class BootBroadcastReceiver extends BroadcastReceiver { static final String action_boot="android.intent.action.BOOT_COMPLETED";
@Override public void onReceive(Context context, Intent intent) { if (intent.getAction().equals(action_boot)){ Intent ootStartIntent=new Intent(context,BootStartDemo.class); ootStartIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(ootStartIntent); }