2017-11-15 3 views
-1

하루 중 시간대에 따라 매분과 매시간 온라인 열차 출발 시간을 확인하는 위젯을 구현하고 있습니다.AlarmManager로 활성화 된 서비스를 디버그하는 방법

manager.setRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP, 
     SystemClock.elapsedRealtime() - 10000, 60000, pendingIntent) 

으로 서비스를 호출 잘 작동하지만 디버깅을 위해 나는 때문에 안드로이드의 최신 버전에서 1 분 제한 할 수없는 약 10 초 간격을 감소하고 싶습니다. 필자는 에뮬레이터의 배터리 수명에 신경 쓰지 않습니다.

내가 이해하는 한, 작업자/타이머를 사용하는 것은 작업이 포 그라운드에 있어야하기 때문에 옵션이 아닙니다. "forground"에 보이는 위젯이 있습니까? 이 경우 권장되는 방법은 무엇입니까?

답변

0

둘 다 쉽게 할 수있는 분리해서하는 경우가 실제로 작업에

  • 구성 의도를 통해
  • 을 트리거 이벤트를 제거하는 서비스

의 의도와 이벤트를 interprete/추가 할 수있는 알람 관리기가 alarmmanager가 트리거 될 때와 동일한 작업을 수행하고 디버그 할 수있는 매우 간단한 GUI/활동을 작성하십시오.

* onSendButtonClick: create and send pendingIntent 

(alarmmanager-handling) alarmmanager가 추가/제거/트리거 될 때마다 텍스트 파일에 로깅을 구현합니다.

최신 안드로이드 버전은 장치가 이미 활성화되어 있고 15 분 미만의 간격이 작동하지 않을 때까지 에너지를 절약하기 위해 alarmmanager 이벤트를 연기 할 수 있습니다.

장치 종료 후 alarmmanager를 다시 구성하려면 on_boot_complete가 필요합니다.

관련 문제