- 論壇徽章:
- 0
|
Activity本身不會在手機開機后自動運行的。但想讓手機開機后就立刻做一些動作,需要使用廣播接收器攔截手機開啟廣播,并在onReceive方法中完成相應(yīng)的動作,如打開一個Activity。
廣播接收類(StartupReceiver)的onReceive方法的代碼如下:- public void onReceive(Context context,Intent intent)
- {
- Intent mainIntent=new Intent(context,Main.class);
- //在廣播接收器中顯示Activity,必須要設(shè)置FLAG_ACTIVITY_NEW_TASK標志
- mainIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
- context.startActivity(mainIntent);
復(fù)制代碼 然后需要在AndroidManifest.xml文件中注冊StartupReceiver類。- <receiver android name="startupReceiver">
- <intent-filter>
- <!--指定手機啟動的Broadcast Action-->
- <action android:name="android.intent.action.BOOT_COMPLETED"/>
- </intent-filter>
- </receiver>
復(fù)制代碼 最后,還需要配置接收開機自動啟動廣播的權(quán)限:- <uses-permission android:name="android:permission.RECEIVE_BOOT_COMPLETED"/>
復(fù)制代碼 |
|