앱 만들기/안드로이드

안드로이드 버전 정보

나도 처음이야 2020. 5. 3.

스마트 폰은 우리 삶을 많이 바꾸어 놓았고, 

모든 이들이 콘텐츠 크레이터가 될 수 있는 기회를 우리에게 가져다주었다.

그중, 안드로이드는 현재까지도 버전을 업데이트하고 있다. 

10여 년 넘게 알파벳 철자 앞자리를 따서 디저트 이름으로 API 도 같이 업데이트 해왔지만

드디어 버전 10에서는 Q로 시작하는 디저트 명을 버리고 Android 10으로 옷을 갈아입었다.

 

디저트 명이 재미있기는 했지만 모호함을 벗어난 

명확한 표현이 안드로이드 운영체제의 앞날을 말해주는 듯 하다.

 

코드명버전API 수준/NDK 릴리즈

Android10 10 API 레벨 29
Pie 9 API 레벨 28
Oreo 8.1.0 API 레벨
Oreo 8.0.0 API 레벨
Nougat 7.1 API 레벨
Nougat 7.0 API 레벨
Marshmallow 6.0 API 레벨 23
Lollipop 5.1 API 레벨
Lollipop 5.0 API 레벨
KitKat 4.4 - 4.4.4 API 레벨
Jelly Bean 4.3.x API 레벨 18
Jelly Bean 1,080x2,160 API 레벨
Jelly Bean 1,080x2,160 API 레벨 16
ICS(Ice Cream Sandwich) 4.0.3 - 4.0.4 API 레벨 15, NDK 8
ICS(Ice Cream Sandwich) 4.0.1 - 4.0.2 API 레벨 14, NDK 7
Honeycomb 1,080x2,160 API 레벨
Honeycomb 3.1 API 레벨 12, NDK 6
Honeycomb 3.0 API 레벨
Gingerbread 2.3.3 - 2.3.7 API 레벨
Gingerbread 2.3 - 2.3.2 API 레벨 9, NDK 5
Froyo 1,080x2,160 API 레벨 8, NDK 4
Eclair 2.1 API 레벨 7, NDK 3
Eclair 2.0.1 API 레벨 6
Eclair 2.0 API 레벨 5
Donut 1.6 API 레벨 4, NDK 2
컵케이크 1.5 API 수준 3, NDK 1
(코드명 없음) 1.1 API 레벨 2
(코드명 없음) 1.0 API 레벨 1

향후에도 업데이트 될 안드로이드 버전은 하기 안드로이드 개발자 사이트에서 확인 하면 된다.

 

코드명, 태그 및 빌드 번호  |  Android 오픈소스 프로젝트  |  Android Open Source Project

그럼, 각 버전별로 소스를 다르게 구현 하고 싶을때 어떻게 할까?

바로 하기 처럼 구현 하면된다.

  //현재 안드로이드 버전이 6.0 미만이면 ...       if(Build.VERSION.SDK_INT < Build.VERSION_CODES.M){
               ...

  }

Build.VERSION_CODES 클래스 상수로

버전 명이 정의 되어있다. 한 예로, 권한 정보를 체크할때 유용하게 사용할 수 있다.

  public static class VERSION_CODES {
        public static final int BASE = 1;
        public static final int BASE_1_1 = 2;
        public static final int CUPCAKE = 3;
        public static final int CUR_DEVELOPMENT = 10000;
        public static final int DONUT = 4;
        public static final int ECLAIR = 5;
        public static final int ECLAIR_0_1 = 6;
        public static final int ECLAIR_MR1 = 7;
        public static final int FROYO = 8;
        public static final int GINGERBREAD = 9;
        public static final int GINGERBREAD_MR1 = 10;
        public static final int HONEYCOMB = 11;
        public static final int HONEYCOMB_MR1 = 12;
        public static final int HONEYCOMB_MR2 = 13;
        public static final int ICE_CREAM_SANDWICH = 14;
        public static final int ICE_CREAM_SANDWICH_MR1 = 15;
        public static final int JELLY_BEAN = 16;
        public static final int JELLY_BEAN_MR1 = 17;
        public static final int JELLY_BEAN_MR2 = 18;
        public static final int KITKAT = 19;
        public static final int KITKAT_WATCH = 20;
        public static final int LOLLIPOP = 21;
        public static final int LOLLIPOP_MR1 = 22;
        public static final int M = 23;
        public static final int N = 24;
        public static final int N_MR1 = 25;
        public static final int O = 26;
        public static final int O_MR1 = 27;
        public static final int P = 28;

 

티스토리를 찾아주셔서 감사합니다.

반응형

댓글