Повторение тревоги не срабатывает на андроиде каждый день в 12 часов. - PullRequest
0 голосов
/ 22 апреля 2019

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

Calendar calendar = Calendar.getInstance();
        calendar.setTimeInMillis(System.currentTimeMillis());
        calendar.set(Calendar.HOUR_OF_DAY, 00);
        calendar.set(Calendar.MINUTE,00);
        calendar.set(Calendar.SECOND,00);

        calendar.add(Calendar.DATE,1);
        Utils.printLog("date from repeating alarm "+calendar.getTime());
        Intent startIntent = new Intent(context, RepeatingAlarmReceiver.class);
        PendingIntent startPIntent = PendingIntent.getBroadcast(context, 15, startIntent, 0);
        AlarmManager alarmMgr = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
        if (alarmMgr != null) {
            alarmMgr.setRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(),AlarmManager.INTERVAL_DAY, startPIntent);
        }

Я проверил по точке останова и обнаружил, что alarmMgr не является нулевым при его установке.Также работает RepeatingAlarmReceiver.class.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...