Ответ
Обычно выбираю minSdkVersion 21 (Android 5.0 Lollipop).
Почему?
- Поддержка Material Design
- 99%+ устройств на рынке (по данным Google Dashboard)
- Достаточно новых API (JobScheduler, RecyclerView, View elevation)
Если проект не требует новейших фич, иногда опускаю до API 19 (KitKat) для покрытия старых устройств.
Пример в build.gradle:
android {
defaultConfig {
minSdkVersion 21
targetSdkVersion 34
}
}
Для мультимодульных проектов можно вынести в buildConfig:
const val MIN_SDK = 21