私は以下のコードを使用しています。 しかし、それは期待通りに機能しません。アプリが終了しても毎日午前12時にアンドロイドアプリを起動するには
AlarmManager am=(AlarmManager)context.getSystemService(Context.ALARM_SERVICE);
Intent intent = new Intent(context, MyReciever.class);
intent.putExtra(ONE_TIME, Boolean.TRUE);
PendingIntent pi = PendingIntent.getBroadcast(context, 0, intent, 0);
am.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis(),
20*1000, pi);
このコードは20秒に1回実行されますが、20 * 1000で24 * 60 * 60 * 1000に置き換えた場合、1日に1回実行されます。
今日私が4:00 PMをインストールすると、私が24時間に1度与えたので、私が上に書いたロジックは午前12時に実行されないと思います。
適切な例で適切なロジックを教えてください。
本当にありがとうございます。事前
あなたのアプリが初めて実行されている時刻を取得し、時間を計算午前12:00に残ります。その後、最初にその値でalarmmanagerを作成します。 – pooyan
初めて時刻を取得して午前12時までの時間を計算し、その後、カレンダーオブジェクトを使用して正確な時刻を設定し、アラームマネージャーに渡します(calendar.get time();) – androidnoobdev