Android: отображать оповещение в определенное время

#java #android #broadcastreceiver #android-alarms

#java #Android #broadcastreceiver #android-сигналы тревоги

Вопрос:

Я пытаюсь отображать оповещение в определенное время каждый день (определенный час и минуту),

Я использовал приведенный ниже код, и он работал со мной и отображал оповещение в выбранное мной время, только когда я открываю приложение в первый раз, но проблема в том, что всякий раз, когда я пытаюсь открыть приложение снова, отображается оповещение, даже если я установил другое время.

Вот мой код:

  Mainactivity.java

        @Override
    protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);

            startAlarmBroadcastReceiver(this);
     }

        public static void startAlarmBroadcastReceiver(Context context) {
        Intent _intent = new Intent(context, MyBroadcastReceiver.class);
        Pendin&Intent pendin&Intent = Pendin&Intent.&etBroadcast(context, 0, _intent, 0);
        AlarmMana&er alarmMana&er = (AlarmMana&er)context.&etSystemService(Context.ALARM_SERVICE);
        alarmMana&er.cancel(pendin&Intent);
        Calendar calendar = Calendar.&etInstance();
        calendar.setTimeInMillis(System.currentTimeMillis());
        calendar.set(Calendar.HOUR_OF_DAY, 11);
        calendar.set(Calendar.MINUTE, 16);
        calendar.set(Calendar.SECOND, 0);
        alarmMana&er.set(AlarmMana&er.RTC_WAKEUP, calendar.&etTimeInMillis(), pendin&Intent);
    }
  

MyBroadcastReceiver.java

     public class MyBroadcastReceiver extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {

        Toast.makeText(context, "Alarm....", Toast.LENGTH_LONG).show();


        }
    }
  

Любая помощь будет оценена.