Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
1inkin1
0 / 0 / 1
Регистрация: 13.03.2014
Сообщений: 182
1

После перезагрузки устройства будильник срабатывает позже заданного времени

29.04.2018, 00:24. Просмотров 290. Ответов 0
Метки нет (Все метки)

Здравствуйте. Столкнулся с такой проблемой - в приложении устанавливаю будильник на определенное время, сохраняю это время в преференс. в обычном состоянии устройства согнал срабатывает когда и должен, но если устройство перезагрузить, то срабатывание сигнала запаздывает на пару минут. такое ощущение, что сигнал добавляет к времени срабатывания время потерянное на перезагрузку устройства, хотя, после перезагрузки я ведь заново устанавливаю сигнал на то же самое время, что и до перезагрузки. в чем тут проблема?

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
public class BootReceiver extends BroadcastReceiver {
 
    SharedPreferences sPref;
    PendingIntent pendingIntent;
    AlarmManager alarmManager;
    Calendar time;
    Intent intent;
    Resources res;
 
    public BootReceiver() {}
    public void onReceive(Context context, Intent intentBR){
        if (intentBR.getAction().equals(Intent.ACTION_BOOT_COMPLETED)) {
 
            sPref = context.getSharedPreferences("AAA", MODE_PRIVATE);
            String hh = sPref.getString("AlH", "00");
            String mm = sPref.getString("AlM", "00");
            alarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
            time = Calendar.getInstance();
            intent = new Intent(context, AlarmReceiver.class);
 
                time.set(Calendar.HOUR_OF_DAY, Integer.valueOf(hh));
                time.set(Calendar.MINUTE, Integer.valueOf(mm));
                time.set(Calendar.SECOND, 0);
                time.set(Calendar.MILLISECOND, 0);
                time.set(Calendar.DAY_OF_YEAR, time.get(Calendar.DAY_OF_YEAR));
           
                pendingIntent = PendingIntent.getBroadcast(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
                alarmManager.set(AlarmManager.RTC_WAKEUP, time.getTimeInMillis(), pendingIntent);
            }
        }
    }
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.04.2018, 00:24
Ответы с готовыми решениями:

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

Отслеживание ошибок после перезагрузки устройства
Здравствуйте. Как отследить ошибку в android studio после перезагрузки...

Alarm не срабатывает через заданный промежуток времени
Всех приветствую. Мне нужно написать будильник. Для решения этой задачи я решил...

HAL_RTC_SetAlarm_IT не работает будильник после установки времени
Просьба не бить ногами за HAL, с будильником бьюсь уже 3 день, если будильник...

Планировщик заданий - на срабатывает задание после перезагрузки windows
Здравствуйте. Проблема - после перезагрузки компьютера задание перестаёт...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.04.2018, 00:24

Не срабатывает всплывающее окно после отправки формы и перезагрузки страницы
Нужно чтобы всплывало окно оповещения о успешной отправке формы. PHP обработчик...

Какое событие срабатывает в ListView после перезагрузки модели в PyQt5 QML QtQuick?
ListView { id: listView model: lModel //... ...

Не срабатывает будильник
Все работало нормально. Но в какой то момент раз и будильник внезапно перестал...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru