내가 보려고 만든 안드로이드 버전 + API Level
Android version + API level + Codename
⭐
안드로이드를 개발하다 보면 현재 최신 안드로이드 버전이 무엇이고, 어떤 라이브러리는 타겟 SDK가 몇이고 킷캣이 어쩌고 오레오가 어쩌고… 정리가 안 된 상태로 혼란을 겪고 있다가 안드로이드 개발 공부한다고 하면 최소 버전 정보는 알고 있어야겠다는 생각이 들어 이번 기회에 정리하게 되었다.
표 보는 법
- 누적 사용량은 2022년 5월 31일에 업데이트 된 데이터이다.
- Android 10부터 Google이 공개적으로 코드명을 사용하는 것을 중단했기 때문에 아래 표에 Android 10 이상의 코드명은 내부 코드명이다.
- 코드 네임은 Android 1.5 Cupcake가 출시되면서 만들어졌기 때문에 그 이전의 코드 네임은 공식 명칭이 아닐 수 있다.
- 아래 표의 출처: https://apilevels.com/
한 눈에 보기
| 버전 | SDK / API level | 버전 코드 | 코드 네임 | 누적 사용량 | Year | 
|---|---|---|---|---|---|
| Android 13 BETA | Level 33 | T | 티라미수 (Tiramisu) | No data | TBA | 
| Android 12 | Level 32 Android 12L | S_V2 | 스노우 콘 (Snow Cone) | ||
| Level 31 Android 12 | S | 14.6% | 2021 | ||
| Android 11 | Level 30 | R | 레드벨벳 케이크 (Red Velvet Cake) | 47.7% | 2020 | 
| Android 10 | Level 29 | Q | 퀸스 타르트 (Quince Tart) | 70.3% | 2019 | 
| Android 9 | Level 28 | P | 파이 (Pie) | 81.6% | 2018 | 
| 
 | |||||
| Android 8 | Level 27 Android 8.1 | O_MR1 | 오레오 (Oreo) | 87.5% | 2017 | 
| Level 26 Android 8.0 | O | 90.2% | |||
| Android 7 | Level 25 Android 7.1 | N_MR1 | 누가 (Nougat) | 91.8% | 2016 | 
| Level 24 Android 7.0 | N | 94.6% | |||
| Android 6 | Level 23 | M | 마시멜로우 (Marshmallow) | 97.1% | 2015 | 
| Android 5 | Level 22 Android 5.1 | LOLLIPOP_MR1 | 롤리팝 (Lollipop) | 98.7% | 2015 | 
| Level 21 Android 5.0 | LOLLIPOP,L | No data | 2014 | ||
| 
 | |||||
| Android 4 | Level 20 Android 4.4W | KITKAT_WATCH | 킷캣 (KitKat) | ||
| Level 19 Android 4.4 | KITKAT | 2013 | |||
| 
 | |||||
| Level 18 Android 4.3 | JELLYBEAN_MR2 | 젤리빈 (Jelly Bean) | |||
| Level 17 Android 4.2 | JELLYBEAN_MR1 | 2012 | |||
| Level 16 Android 4.1 | JELLYBEAN | ||||
| Level 15 Android 4.0.3 – 4.0.4 | ICE_CREAM_SANDWICH_MR1 | 아이스크림 샌드위치 (Ice Cream Sandwich) | 2011 | ||
| Level 14 Android 4.0.1 – 4.0.2 | ICE_CREAM_SANDWICH | ||||
| Android 3 | Level 13 Android 3.2 | HONEYCOMB_MR2 | 허니콤 (Honeycomb) | ||
| Level 12 Android 3.1 | HONEYCOMB_MR1 | ||||
| Level 11 Android 3.0 | HONEYCOMB | ||||
| Android 2 | Level 10 Android 2.3.3 – 2.3.7 | GINGERBREAD_MR1 | 진저브레드 (Gingerbread) | ||
| Level 9 Android 2.3.0 – 2.3.2 | GINGERBREAD | 2010 | |||
| Level 8 Android 2.2 | FROYO | 프로요 (Froyo) | |||
| Level 7 Android 2.1 | ECLAIR_MR1 | 에클레어 (Eclair) | |||
| Level 6 Android 2.0.1 | ECLAIR_0_1 | 2009 | |||
| Level 5 Android 2.0 | ECLAIR | ||||
| Android 1 | Level 4 Android 1.6 | DONUT | 도넛 (Donut) | ||
| Level 3 Android 1.5 | CUPCAKE | 컵케이크 (Cupcake) | |||
| Level 2 Android 1.1 | BASE_1_1 | 쁘띠 푸르 (Petit Four) | |||
| Level 1 Android 1.0 | BASE | 애플파이 (Apple Pie) | 2008 | ||
버전 별 특징
SDK 14 (Ice Cream Sandwich)
- Jetpack과 AndroidX 라이브러리가 지원되는 최소 버전이다. 그렇기 때문에 사실상 이 이하의 버전은 다루지 않을 가능성이 높다.
- 삼성 갤럭시 S3 초기 OS ~ 4.4(KitKat)
SDK 19 (KitKat)
- Google Play가 지원되는 최소 버전이다.
- 삼성 갤럭시 S5 초기 OS ~ 6.0(Marshmallow)
SDK 21 (Lollipop)
- Dalvik 런타임에서 ART로 변경되었다.
- Material 디자인을 지원하기 시작했다.
- Jetpack Compose를 지원하는 최소 버전이다.
- 카카오뱅크가 지원하는 최소 버전이다.
- 삼성 갤럭시 S6 초기 OS ~ 7.0(Nougat)
SDK 22 (Lollipop)
- SDK 22 이상의 버전을 사용하는 사용자가 전체의 98.7%이다.
SDK 23 (Marshmallow)
- 런타임 퍼미션 방식으로 변경했다. 기존에는 앱에 필요한 모든 권한을 한 번에 받아야 했다.
- 카카오톡이 지원하는 최소 버전이다.
- 카카오페이가 지원하는 최소 버전이다.
- 삼성 갤럭시 S7 초기 OS ~ 8.0(Oreo)
SDK 26 (Oreo)
- 백그라운드 제약이 더 많이 생겼다.
- 삼성 갤럭시 S9 초기 OS ~ 10(Quince Tart)
SDK 28 (Pie)
- 새로 만드는 Wear OS나 Wear OS 업데이트를 위해서 targetSdk는 28 이상이어야 한다.
- 삼성 갤럭시 S10 초기 OS ~ 12(Snow Cone)
SDK 30 (Red Velvet Cake)
- 현재 새로 만드는 앱은 targetSdk를 30 이상으로 해야한다. 링크
- 기존의 앱들도 2022년 11월까지 targetSdk를 30 이상으로 올려야 한다. 링크
- 삼성 갤럭시 S21 초기 OS
SDK 32 (Snow Cone)
- 2022년 8월 부터는 새로 만드는 앱은 targetSdk를 31 이상으로 해야한다.링크
- 기존의 앱들은 2023년 11월까지 targetSdk가 31 이상이 되도록 해야한다.링크
- 삼성 갤럭시 S22 초기 OS
최소 버전을 몇으로 할까?
정답은 없다.
다음 트위터를 참고해보자. (절대적으로 따라야 하는 것은 아니다)
23
— minSdkVersion (@minSdkVersion) December 9, 2019