在部分程序设计的需求中,有时会遇到自己的app随系统启动,接下来是分析过程。
程序如果想开启启动,可是系统没有什么借口供调用,不过还是可以通过其他的办法实现,
系统在启动过程中会发送多条广播信息,供部分程序使用,自己的程序也可以模拟接受这些系统发出的广播,然后执,(以下方法在android2.3,android4.0实现成功)
行自己的app就可以实现自己的程序随机启动的效果。
首先,添加接受广播信息的权限。
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
然后,准备广播是显示内容启动自己的app
package com.eyashero.votetest;import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;/** * * 2013-12-19 */public class BootBroadcastReceiver extends BroadcastReceiver { private static final String ACTION = "android.intent.action.BOOT_COMPLETED"; @Override public void onReceive(Context context, Intent intent) { if (intent.getAction().equals(ACTION)) { // 要启动的Activity Intent mainActivityIntent = new Intent(context, MainActivity.class); mainActivityIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(mainActivityIntent); } }}
完成后,就可以实现开机启动。