天天看點

Android 程式 随系統啟動

主要使用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));

   }

 }