主要使用broadcast来实现。
当Android系统启动完成时,会广播一个Intent,其中的Action为android.intent.action.BOOT_COMPLETED ,我们只要写个BroadcastReceiver 来监听这个消息,并启动自己的程序就可以了。
BroadcastReceiver 所在的AndroidManifest.xml :
<receiver android:name="TestBroadReceier" android:enabled="true" android:label="@string/hello"
android:permission="android.permission.RECEIVE_BOOT_COMPLETED">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</receiver>
这里有两点(标红):
<action android:name="android.intent.action.BOOT_COMPLETED" />
注册BroadcastReceiver 接受的信息类型
android:permission="android.permission.RECEIVE_BOOT_COMPLETED"
为BroadcastReceiver 设置权限
然后实现MyBroadReceier extends BroadcastReceiver
代码没有测试过。
以上。
@Override
public void onReceive(Context context, Intent arg1) {
// TODO Auto-generated method stub
final String action = intent.getAction();
if (action.equals("android.intent.action.BOOT_COMPLETED ")) {
Log.i("MyBroadReceier ", "android.intent.action.BOOT_COMPLETED ");
context.startActivity(new Intent(context, MyActivity.class));
}
}