在启动时自动启动一个应用程序:
1、AndroidManifest.xml
- <receiver android:enabled="true" android:name=".BootUpReceiver"
- 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>
2、permission
- <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
3、BroadcastReceiver实现
- public class BootUpReceiver extends BroadcastReceiver{
- @Override
- public void onReceive(Context context, Intent intent) {
- Intent i = new Intent(context, MyActivity.class);
- //使用Receiver直接启动Activity时候需要加入此flag,否则系统会出现异常
- i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
- context.startActivity(i);
- }
- }
要启动的Activity类:
Java代码
- import android.app.Activity;
- import android.os.Bundle;
- public class StartUp extends Activity {
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- }
- }