Android - AlarmManager 복구
-
18-09-2019 - |
문제
덕분에 TasKiller
내 컴퓨터에 제공되는 업데이트를 종료하는 안정적인 방법이 있습니다. AppWidget
~로부터 AlarmManager
!
이제 비꼬는 말은 제쳐두고, 그러한 사건으로부터 어떻게 회복할 수 있습니까?지금까지 나는 단지 Alerts
전화기를 재부팅한 후에만 부활합니다.
복구 코드를 다양한 곳에 붙일 수 있습니다. Activity#onCreate
내 앱과 위젯에 속하지만 더 좋은 방법이 있나요?
또한 경고가 정상이라면 어떻게 될까요? 경고를 감지하고 실행하지 않는 방법이 있습니까? AlarmManager#setRepeating
?
아니면 여러 번 실행하면 해가 되나요?
해결책
이제 Sarcasm을 제쳐두고 그러한 이벤트에서 어떻게 회복합니까?
싱글몰트 스카치가 도움이 된다고 들었습니다.
지금까지 나는 경고가 전화를 재부팅 한 후에 만 부활하는 것을 알 수 있습니다.
그것은 당신이 연결하는 경우에만 해당됩니다. BOOT_COMPLETED
방송 Intent
그리고 경보를 다시 설정합니다.
작업 킬러는 놀라울 정도로 철저하지만 작업을 중지할 수는 없습니다. BroadcastReceiver
다음과 같은 시스템 브로드캐스트 수신으로부터 BOOT_COMPLETED
.통제력을 회복하고 경보를 재설정하는 데 도움이 되는 수신하고 싶은 다른 방송을 찾아보실 수 있습니다.
또한 알림이 정상이면 어떻게해야합니까?이를 감지하고 AlarmManager#SetRepeating을 실행하지 않는 방법이 있습니까?아니면 여러 번 실행하는 데 해를 끼칠 수 있습니까?
당신은 할 수 있습니다 cancel()
기존 알람.그러니 중복이 걱정되신다면, cancel()
현재 알람(알람이 없으면 조용히 실패할 것임)을 확인한 다음 알람을 설정합니다.