ブート完了イベントをキャッチするブロードキャスト レシーバーを実装しようとしています。
マニフェストに許可を入れました
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
マニフェストのレシーバー タグの後にインテント フィルターを配置します (クラス ファイルはレシーバー パッケージにあります)。
<receiver android:name=".receivers.BootReceiver" >
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<action android:name="android.intent.action.QUICKBOOT_POWERON" />
<action android:name="android.intent.action.REBOOT" />
</intent-filter>
</receiver>
そして最後にレシーバークラスを宣言しました。クラスは、データベースからいくつかのデータをロードし、アラームを設定する必要があります。ただし、機能するかどうかを確認するために、トーストを入れましたが、表示されず、バイブラもありません。
public class BootReceiver extends BroadcastReceiver {
public void onReceive(Context context, Intent callingIntent) {
Vibrator vibrator=(Vibrator) context.getSystemService(Context.VIBRATOR_SERVICE);
vibrator.vibrate(5000);
Toast.makeText(context, "BOOT RECEIVED", Toast.LENGTH_LONG).show();
}
}
誰でも理由を知っていますか?