프로그래밍/android

[android] 방해금지모드 확인 (Do not disturb mode)

-샤리- 2021. 6. 15. 10:01
try {
	// off = 0, on - Priority Only = 1, Total Silence = 2, Alarms only = 3
	val zenMode = Settings.Global.getInt(contentResolver, "zen_mode")
} catch (e: Settings.SettingNotFoundException) {
	e.printStackTrace()
}

zenMode값이 0이라면 방해금지모드가 off라는 의미. 즉, 일반상태라는 것.

1은 중요한 알람만 받겠다. 2는 무음모드. 3은 알림만 허용.

 

이렇게 단순히 방해금지모드를 확인하는 것은 특별한 권한 없이 알아낼 수 있다. 하지만 방해금지모드에서 앱으로 볼륨을 조절과 같은 어떠한 행위를 하려면 권한이 필요하다.

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