버전: 26
이유
Notification Channels: API 26부터 모든 알림에 채널을 할당해야 한다. 알림에 우선 순위를 부여해 알림을 세부적으로 설정할 수 있다.
Autofill Framework: 추후 로그인 기능이 추가되면 사용자 이름과 비밀번호 등의 데이터를 자동으로 채워주는 기능을 제공하여 UX를 개선할 수 있다.
Background Execution Limits: 추후 GPS 기능이 추가되어 사용자 위치를 추적하게 된다. API 26의 백그라운드 앱의 실행 제한으로 배터리 수명을 연장할 수 있다.
2024년 7월 11일 기준 보급률이 95.4%로 많은 안드로이드 장치를 지원한다. 이를 통해 최신 버전 사용자에게 더 나은 기능을 제공할 수 있다.
출처: 안드로이드 스튜디오
minSdk를 낮추면 사용자를 더 확보할 수 있기는 하나, 사용자 한 명, 0.1%의 사용자를 위해 자원을 감수할 가치가 있는가? 는 생각해 볼 여지가 있다.
코드 간소화: 호환성을 유지하기 위해 작성해야 분기 처리가 줄어든다. 이를 통해 개발 속도를 높일 수 있다.
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
// SDK 26 이상에서만 Notification Channel 생성
val channel = NotificationChannel(
CHANNEL_ID,
"Channel name",
NotificationManager.IMPORTANCE_DEFAULT
).apply {
description = "Channel description"
}
val notificationManager: NotificationManager =
getSystemService(NotificationManager::class.java)
notificationManager.createNotificationChannel(channel)
}