在开发过程中,有些应用需要随着系统启动而启动,那么如何实现应用程序开机启动呢?在Android 开机完毕后,会发送开机完成广播,因此只要编写广播接收器接收该广播,并启动应用程序即可。这种方式下只能使用广播接收器静态注册方式,因为应用程序的启动是由广播接收器启动。
- <!-- 开机启动完成广播接收器 -->
- <receiver android:name="com.spreadtrum.BroadcastReceiver.BootReceiver" android:permission="android.permission.RECEIVE_BOOT_COMPLETED">
- <intent-filter>
- <action android:name="android.intent.action.BOOT_COMPLETED"></action>
- </intent-filter>
- </receiver>
-
- public class BootReceiver extends BroadcastReceiver {
-
- private static final String TAG = "BootReceiver";
-
- @Override
- public void onReceive(Context context, Intent intent) {
- this.context = context;
-
- if (Intent.ACTION_BOOT_COMPLETED.equals(intent.getAction())){
-
- context.startActivity(new Intent(context, MainActivity.class));
- }
- }
- }
Android关机广播
- <receiver android:name=".ShutdownReceiver">
- <intent-filter>
- <action android:name="android.intent.action.ACTION_SHUTDOWN"/>
- </intent-filter>
- </receiver>