您好,登錄后才能下訂單哦!
程序的開機自啟動是一個非常有用的特性,在Android中,借助廣播接收機制,這種特性非常容易實現,這里以開機啟動一個Activity為例說明。
Java代碼:
/** * @encoding UTF-8 */ package org.flyingcat.os; import org.flyingcat.androidcodelib.MainActivity; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; /** * @author Flyingcat * @create 2014-4-21 * @version 1.0 */ public final class BootReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent arg1) { Intent intent = new Intent(context, MainActivity.class); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(intent); } }
注:要啟動一個Activity,必須添加Intent.FLAG_ACTIVITY_NEW_TASK標志,否則會在執行時拋出異常。
AndroidManifest.xml中添加:
<receiver android:name="org.flyingcat.os.BootReceiver"> <intent-filter > <action android:name="android.intent.action.BOOT_COMPLETED"/> </intent-filter> </receiver>
此外,還需要注冊權限:
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
如果不注冊該項權限,則無法收到BOOT_COMPLETED廣播,無法達到開機啟動的效果。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。