본문 바로가기
Android/Dev

특정 작업시 화면이 꺼지지 않게 유지

by featherwing 2018. 4. 26.
반응형
public void KeepScreenOn(Integer stateKeepScreen) {

    if (stateKeepScreen == 0) {

        getActivity().getWindow().clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);

    } else if (stateKeepScreen ==1) {

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

    }

}

 

특정작업을 수행할 때 화면이 꺼지지 않도록 하는 방법.

 

사용시에는 KeepScreenOn(1); , KeepScreenOn(0); 으로 사용합니다.

 

 

 

 

Flag와 clearFlag로 만들었습니다.

상기방법의 장점은 아래와 같습니다.

 

1. Flag/clearFlag를 통해서 임의로 켜고 끄는것이 용이함.

2. 시스템 리소스 관리를 OS에서 함.

3. 추가적인 권한요구(android.permission.WAKE_LOCK) 불필요. 

 

 

 

 

*Fragment에 사용할 때의 코드로 Activity에 사용할 경우에는, getActivity()를 삭제 후 적용하면 됩니다.

 

 

 

 

반응형

댓글