У меня есть диспетчер аварийных сигналов, вызывающий конкретную услугу через каждые 1 минуту, которые выполняют некоторые вычисления и отправляют широковещательную передачу в широковещательный приемник. Я сделал это с помощью диспетчера аварийных сигналов setRepeating().Alarm Manager не вызывает службу после перезагрузки
Здесь мой код: менеджер
Сигнализация:
Intent serviceIntent = new Intent(this, PrayerNotifyService.class);
PendingIntent pintent = PendingIntent.getService(this, 0, serviceIntent, 0);
AlarmManager alarm = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
alarm.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis(), 60000, pintent);
Он работает нормально, но после перезагрузки мобильного телефона, менеджер сигнализации не вызывая службу.
Я искал в Интернете и нашел несколько решений, как показано ниже, но они не сработали для меня.
я также дать Boot комплектных разрешения
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
Мой приемник в манифесте:
<receiver
android:name=".NotificationReceiver"
android:enabled="true"
android:exported="true" >
<action android:name="android.intent.action.BOOT_COMPLETED" />
</receiver>
Может ли один скажите мне, как решить эту проблему?
Индивидуальные аварийные сигналы уничтожаются, когда устройство отключается, вам необходимо повторно зарегистрировать будильник, когда устройство загружается. Проверьте этот вопрос http://stackoverflow.com/q/12034357/5505915 – Arjun
Каким образом вы говорите мне правильный способ выполнения работы в фоновом режиме после каждой минуты? Я не хотел использовать липкое обслуживание, которое работает все время –
@asadhaider IMHO, вы не должны использовать Alarms на такой низкой частоте. Лучше использовать таймер в таком сценарии. Какова цель установки сигнализации каждую минуту? – iZBasit