본문 바로가기
안드로이드

Application 실행 중 화면 유지

by 코딩히어로 2022. 2. 3.
728x90

Application을 제작하면서 오랜 시간 화면에 정보를 표시해야 되는 경우

예를 들어 미세먼지 정보를 켜놓고 본다거나 가스 검출 센서를 블루투스로

연결해서 실시간으로 계속 모니터링 해야되는 경우에 App의 화면이 꺼지면 안 됩니다.

 

안드로이드 시스템에서는 기본적으로 사용자가 화면을 터치하지 않거나

특별한 이벤트가 없는 경우 배터리를 보호하기 위해서 화면을 OFF 합니다.

 

하지만 필요한 경우에는 Application 자체에서 화면이 OFF 되는 것을 막을 수 있는데

방법은 다음과 같이 두 가지입니다.

 

첫 번째는 실행되는 Activity의 Oncreate 함수에 SCREEN_ON을 적용합니다.

 

getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);

 

위와 같이 설정하면 해당 Activity가 실행되는 동안에는 화면이 꺼지지 않습니다.

그렇지만 만약 화면이 여러 개라고 한다면 Activity마다 해당 옵션을 넣어주어야 하는

번거로움이 있기 때문에 Application 자체가 꺼지지 않게 하려면 Manifest에 permission을

주어 꺼지지 않게 설정을 해주면 됩니다.

 

<uses-permission android:name="android.permission.WAKE_LOCK"/>

 

위 설정은 Application이 실행되는 동안 화면이 꺼지지 않는 기능으로

어플이 종료되거나 사용자에 의해 화면 잠금 버튼이 클릭되는 두 가지 경우를 제외하고는

계속 화면이 켜져 있게 됩니다.

 

개발자는 Application에서 화면이 꺼지지 않는 부분이 페이지별로 상이하다면

위 두 가지 경우 중에 첫 번째를 선택하여 배터리 소모를 아껴주어야 합니다.

728x90
반응형

댓글