1 、原理:
ときにAndroidの完了するためにシステムBOOTを後の段階では、命名お送りします ACTION_BOOT_COMPLETEDの 放送を、私たちは中に出てくるBroadcastReceiverこの放送をキャプチャして、私たちの開始のアクティビティやサービスを、もちろん、私たちのことに注意することは、アプリケーションが取得する必要があります放送権は、以下の具体的な手順を参照してください。
最初のステップは:まず、の立ち上げのための1つが存在しなければならない活動やサービス、独自作成するためにここに最も簡単なシステムでは、活動を説明する例を。
パッケージcom.billhoo.study。
輸入android.app.Activity。
輸入android.os.Bundle;
パブリッククラスBootTestActivityは 延びアクティビティ{
/ **活動が最初に作成されたときに呼び出されます。* /
@オーバーライド
公共のボイドのonCreate(バンドルsavedInstanceState){
スーパー.onCreate(savedInstanceState);
setContentView(R.layout.main)。
}
}
ブラザーの2つのステップが:私たちは、書きたいBroadcastReceiverをキャプチャするためにACTION_BOOT_COMPLETEDにこの放送を、私たちは、キャプチャ後に開始され始めるの活動。
パッケージcom.billhoo.study。
輸入android.content.BroadcastReceiver;
輸入android.content.Context;
輸入android.content.Intent。
パブリッククラスBootCompletedReceiverは 延び BroadcastReceiverを{
@オーバーライド
公共ボイドonReceive(コンテキスト・コンテキスト、テントの意図){
もし(intent.getAction()。等号(Intent.ACTION_BOOT_COMPLETED))
{
テントnewIntent = 新しいテント(コンテキスト、BootTestActivity。クラス);
newIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); //あなたがマークを追加したり、起動に失敗しなければならないことに注意してください
context.startActivity(newIntent)。
//注意:あなたは、ブートプログラムが使用して見に行くされている場合は、startActivityをあなたが持つサービスを開始したい場合はSTARTSERVICEを
}
}
}
第三段階:でのAndroidManifest.xmlたちのプロフィールに登録BroadcastReceiver
<?XMLバージョン= "1.0" エンコード= "UTF-8"?>
<マニフェストのxmlns:アンドロイド= " http://schemas.android.com/apk/res/android "
パッケージ= "com.billhoo.study"のandroid:versionCode = "1"
アンドロイド:versionName = "1.0">
<使用-SDKアンドロイド:minSdkVersionが= "4" />
<! - ポイントに注意してください:あなたが追加する必要があります許可権限を - >
<使用許可アンドロイド:名= "android.permission.RECEIVE_BOOT_COMPLETED" />
<アプリケーションアンドロイド:アイコン= "描画可能/アイコン@" アンドロイド:ラベル= "@文字列/ APP_NAME">
<! - 活動 - >
<活動のアンドロイド:名= "BootTestActivity。" アンドロイド:ラベル= "@文字列/ APP_NAME">
<意図フィルタ>
<アクションアンドロイド:名= "android.intent.action.MAIN" />
<カテゴリアンドロイド:名= "android.intent.category.LAUNCHER" />
</意図フィルタ>
</アクティビティ>
<! - 注意点2:プラスのレシーバのコンテンツ - >
<受信機のアンドロイド:名= "BootCompletedReceiver">
<意図フィルタ>
<アクションアンドロイド:名= "android.intent.action.BOOT_COMPLETED" />
</意図フィルタ>
</レシーバ>
</アプリケーション>
</マニフェスト>
ます。https://www.cnblogs.com/postmaster/p/3756050.htmlで再現