0

アプリを毎日午前 9 時に開始したい。setRepeatingAlarm()そのために、毎日午前 9 時にAlarm_1 を開始します。

manager.setRepeating(AlarmManager.RTC_WAKEUP,
    timeOn.getTimeInMillis(), 86400000,startingIntent);

alarm_1 から、1 分間隔でサービスを繰り返し開始する別のアラーム MainAlarm を開始します。

manager.setRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP,
    SystemClock.elapsedRealtime(), duration, MainActivity.mainIntent);

毎日午後 9 時にアプリを停止したい。

そのために、毎日午後 9 時にsetRepeatingAlarm()そのMainAlarm を使用して Alarm_2 を開始します。cancel()

しかし、これは期待どおりに機能していません。

何をすべきですか?アラームを3つ使っているので問題ないですか?

翌日にはアラームが作動しません。

     This is my cancel() code:
          public class AlarmReceiver2 extends BroadcastReceiver {
          @Override
          public void onReceive(Context context, Intent intent) {
         AlarmManager manager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
         manager.cancel(MainActivity.mainIntent);
      MainActivity.mainIntent.cancel();
          }
        }   
4

1 に答える 1