무엇인가를 구현하려고하는 Im -일정한 시간 동안 화면을 켜고 끄기
화면이 꺼져 있습니다 (어둡게). 나는 이벤트/브로드 캐스트 또는 뭔가에 의해 15 초 동안 화면을 깨울 수 있기를 원합니다. 그리고 나서 사용자의 개입이 없었다면 화면이 꺼져 야합니다 (어둠) 다시.
어떻게하면됩니까?
무엇인가를 구현하려고하는 Im -일정한 시간 동안 화면을 켜고 끄기
화면이 꺼져 있습니다 (어둡게). 나는 이벤트/브로드 캐스트 또는 뭔가에 의해 15 초 동안 화면을 깨울 수 있기를 원합니다. 그리고 나서 사용자의 개입이 없었다면 화면이 꺼져 야합니다 (어둠) 다시.
어떻게하면됩니까?
AlarmManager를 사용할 수 있습니다.
는이 같은 선으로 알람을 트리거 : 나는 서비스를 트리거 한 내 경우
Alarm Manager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
pendingServiceIntent = PendingIntent.getService(this.getApplicationContext(), 0,
new Intent(this.getApplicationContext(), DataCollectionService.class), 0);
long intervalInMinutes = 5; // will wake you up every 5 minutes
long triggerAtTime = System.currentTimeMillis() + 1000*60*intervalInMinutes;
alarmManager.set(AlarmManager.ELAPSED_REALTIME_WAKEUP, triggerAtTime, pendingServiceIntent);
. BroadcastReceiver 또는 원하는 것을 확장 할 수 있습니다. 그런 다음 15 초 이상 화면을 점등하기 위해 가동 잠금을 사용합니다 :
powerManager = (PowerManager) getSystemService(POWER_SERVICE);
wL = powerManager.newWakeLock(PowerManager.FULL_WAKE_LOCK, "LocRepTask");
wL.acquire(); // forces processor to stay awake
// do your stuff.....
wl.release(); // processor no longer awake because of you
당신은 안드로이드 매니페스트에 허가 WAKE_LOCK
이 필요합니다.
이렇게하려면 실행중인 서비스에 partial wake lock이 있어야합니다. 이 서비스는 원하는 간격으로 방송 수신자의 의도를 해고하고 화면을 깨울 수 있습니다. 그러나 제안자가 제안한 것처럼, 이는 CPU가 장치 화면이 꺼져 있어도 계속 켜져 있어야한다는 것을 의미하며, 대기 모드보다 빨리 배터리를 소모합니다.
다른 요구 사항은 PowerManager API로 쉽게 다룰 수 있습니다. 잘하면 충분할 것입니다. 행운을 빕니다!
배터리를 낭비하는 좋은 방법처럼 들립니다. – zapl
그리고 어떻게 도움이됩니까? – dor506