안드로이드

[Android] 안드로이드 잠금 화면, 슬립 깨우기

코딩하는후운 2024. 3. 26. 15:47
반응형

Android 잠금 화면, 슬립 깨우기

잠금화면을 해제할 액티비티의 onCreate 에 추가 하였습니다.

 private fun turnScreenOnAndKeyguardOff() {
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O_MR1) {
            setShowWhenLocked(true)
            setTurnScreenOn(true)
            window.addFlags(
                WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON
                        or WindowManager.LayoutParams.FLAG_ALLOW_LOCK_WHILE_SCREEN_ON
            )
        } else {
            window.addFlags(
                WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED    // deprecated api 27
                        or WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD     // deprecated api 26
                        or WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON
                        or WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON   // deprecated api 27
                        or WindowManager.LayoutParams.FLAG_ALLOW_LOCK_WHILE_SCREEN_ON
            )
        }
        val keyguardMgr = getSystemService(Context.KEYGUARD_SERVICE) as KeyguardManager
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
            keyguardMgr.requestDismissKeyguard(this, null)
        }
    }

FLAG_SHOW_WHEN_LOCKED : 잠금화면 상태에서 App의 Activity 화면을 먼저 띄워준다. 
FLAG_TURN_SCREEN_ON : Screen On 시켜준다. 

 

OS 12에서 잠금화면(비번 걸려있을 때) 화면이 안 깨어나는 이슈

해당 경우 Fragment에 퍼미션 체크하는 부분이 있었는데 겹치면서 화면이 안 깨어졌었습니다! 퍼미션 확인!!

반응형