기존 사용코드
SDK 30 이상에서는 더 이상 사용 하면안됨.
val metrics = DisplayMetrics()
windowManager.defaultDisplay.getRealMetrics(metrics)
대응코드
private fun getDisplayMetrics(): DisplayMetrics? {
val defaultDisplay = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
DisplayManagerCompat.getInstance(this@IdCameraActivity).getDisplay(Display.DEFAULT_DISPLAY)
} else {
@Suppress("DEPRECATION")
windowManager.defaultDisplay
}
val displayMetrics = defaultDisplay?.let { it ->
val displayContext = createDisplayContext(it)
displayContext.resources.displayMetrics
}
return displayMetrics
}
사용방법
getDisplayMetrics()?.let { metrics ->
// metrics 사용하면됨.
}
'Android(Kotlin)' 카테고리의 다른 글
[Kotlin] windowManager.defaultDisplay.getSize DEPRECATION 대응 (1) | 2024.12.18 |
---|---|
[Kotlin] AsyncTask Deplecated Observable.fromCallable() 로 대체하기 (0) | 2024.12.02 |
[Kotlin] RxJava / retrofit2 이용한 API 서버 연동 (0) | 2024.11.28 |
[Kotilin] 연산자 (Operators) (0) | 2024.11.13 |
[Kotlin] for / foreach / while / do while (0) | 2024.10.04 |