У меня есть приложение, которое устанавливает будильник при получении push-уведомления FCM (Firebase Cloud Messaging).Работает нормально, нормально.
Но, когда я перезагружаю / перезагружаю устройство, срабатывает сигнал тревоги.Я попытался добавить ACTION_BOOT_COMPLETED широковещательный приемник для сброса тревоги.Но, когда событие BOOT_COMPLETED происходит после получения push-уведомления.
Итак, задержка звонка тревоги.
Это мой код для установки будильника
Intent alarmIntent = new Intent(getApplicationContext(), AlarmReceiver.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(getApplicationContext(), ALARM_ID, alarmIntent,PendingIntent.FLAG_UPDATE_CURRENT);
AlarmManager alarmManager = (AlarmManager) getApplicationContext().getSystemService(Context.ALARM_SERVICE);
if (Build.VERSION.SDK_INT >= 23) {
alarmManager.setExactAndAllowWhileIdle(AlarmManager.RTC_WAKEUP,
System.currentTimeMillis() + 2000, pendingIntent);
} else if (Build.VERSION.SDK_INT >= 19) {
alarmManager.setExact(AlarmManager.RTC_WAKEUP, System.currentTimeMillis() + 2000, pendingIntent);
} else {
alarmManager.set(AlarmManager.RTC_WAKEUP, System.currentTimeMillis() + 2000, pendingIntent);
}
Итак, как я могу определить, перезагружается ли устройство при получении push-уведомления?