Я пытаюсь отключить запланированные действия каждый час или около того, все работает в фоновом режиме.
Сейчас у меня есть BroadcastReceiver, который запускается при загрузке устройства.BroadcastReceiver создает PendingIntent для действия (Called AlarmController), которое создает все необходимые методы, необходимые для отключения запланированного действия.
Однако, похоже, это не работает.Вот так мой класс BroadcastReciever onReceive {} выглядит так: , а идентичен моей основной деятельности onCreate {} (только для тестирования)
Intent intent = new Intent(serviceactivirt.this, AlarmController.class);
PendingIntent sender = PendingIntent.getActivity(serviceactivirt.this, 0, intent, 0);
try {
sender.send();
} catch (CanceledException e) {
Toast.makeText(getApplicationContext(), "FEJLSAN", Toast.LENGTH_LONG).show();
}
Это на самом деле работает, за исключением того, что мое приложение вылетаетпри запуске, но запланированная деятельность работает ... Есть идеи?Это «способ сделать это» или есть более рекомендуемый способ?Ура!
Решение:
Вместо того, чтобы BroadcastReciever вызывал Activity, я заставил BroadcastReciever запустить Сервис.И изменил мою активность на сервис, программно и в манифесте.Прекрасно работает!