https://source.android.com/source/build-numbers.html
Code name |
Version |
API level |
(no code name) |
1.0 |
API level 1 |
(no code name) |
1.1 |
API level 2 |
Cupcake |
1.5 |
API level 3, NDK 1 |
Donut |
1.6 |
API level 4, NDK 2 |
Eclair |
2.0 |
API level 5 |
Eclair |
2.0.1 |
API level 6 |
Eclair |
2.1 |
API level 7, NDK 3 |
Froyo |
2.2.x |
API level 8, NDK 4 |
Gingerbread |
2.3 - 2.3.2 |
API level 9, NDK 5 |
Gingerbread |
2.3.3 - 2.3.7 |
API level 10 |
Honeycomb |
3.0 |
API level 11 |
Honeycomb |
3.1 |
API level 12, NDK 6 |
Honeycomb |
3.2.x |
API level 13 |
Ice Cream Sandwich |
4.0.1 - 4.0.2 |
API level 14, NDK 7 |
Ice Cream Sandwich |
4.0.3 - 4.0.4 |
API level 15, NDK 8 |
Jelly Bean |
4.1.x |
API level 16 |
Jelly Bean |
4.2.x |
API level 17 |
Jelly Bean |
4.3 |
API level 18 |
Source Tree
├── bionic : bionic libc(BSD의 libc 수정)를 포함
├── bootable : bootloader, recovery mode 관련 코드
├── build : 빌드 관련 스크립트를 저장
│ ├── envsetup.sh : 환경 정보 설정 파일, 제조사의 Flag들에 대한 설정
│ │ ( source build/envsetup.sh 로 반영)
│ ├── core
│ │ └── prelink-linux-arm.map : shared library들이 로딩되는 번지를
│ │ 미리 지정한 파일
│ └── target
│ └── board
│ └── generic
│ ├── AndroidBoard.mk : 최상위 directive 파일,
│ │ Android 최종 결과물 구성서
│ │ 자동 포함 bin에 대한 install을 결정
│ │ init.rc, init%hw%.rc 들을 install
│ ├── BoardConfig.mk : HAL의 en/disable 등을 결정,
│ │ Android.mk파일들에서 사용되는 define을 선언
│ └── device.mk : 최종 결과물에 대해 filesystem설정 및
│ 포함시키고 싶은 binary들을 copy/install 결정
├── cts : Compatibility Test Suite, GMS를 탑재 위해 통과해야 하는 Test
├── dalvik : dalvik VM 관련 소스 코드
├── development : 개발용 application을 저장
│ (하위에 samples directory에 참고할만한 source가 많이 있다)
├── device : 칩 관련 설정 파일 및 디버깅을 위한 cmm 파일 등을 포함
├── external : 기존 작성된 library, binary등의 소스 코드를 포함
│ └── synergy : CSR synergy source
├── frameworks
│ ├── base : Android Framework Source Code
│ ├── cmds : binder 관련된 service manager 소스코드 및 여러 가지 command
│ ├── libs : Android base library(AudioFlinger,SurfaceFlinger,util,binder 등)
│ ├── media : media 관련 Client & Service 라이브러리
│ │ (media관련된 부분이 양이 많고 독립적이라 따로 빼서 관리함)
│ └── policies : Android 시스템을 background에서 제어하는 최상위 application
│ KeyGuard 관련, 화면 제어(rotation..),event 관리 등의 작업 처리
├── hardware : Android에서 사용하는 h/w 관련 소스 코드 포함(HAL, include..)
│ ├── libhardware : Board H/W 의존성이 높은 하드웨어 모듈 포함
│ └── libhardware_legacy: 일반적으로 Android에 반드시 있어야 하는 H/W 모듈
├── packages : Android 기본 Application 소스 코드를 포함
├── prebuilt : 툴체인과 미리 빌드되어 들어가는 바이너리 파일 포함
├── system : Android의 기본 바이너리 소스 코드(init…)
│ ├── core
│ │ ├── init : Android init 소스 코드
│ │ └── vold : external storage 제어 모듈 (Eclair)
│ └── vold : external storage 제어 모듈 (Froyo/Gingerbread)
├── vendor : vendor specific code(HAL, product list 관리…)
└── ndk : Native Development Kit (docs directory를 참고하면
도움이 많이 된다. : ANDROID-MK.html, SYSTEM-ISSUES.html, NDK-BUILD.html등)
'Programming > android' 카테고리의 다른 글
Can't locate Switch.pm (0) | 2014.09.29 |
---|---|
android-x86 build 도중 만난 errors (0) | 2014.07.13 |
android Kitkat 을 VMware에 설치해보자 (0) | 2014.07.13 |
format_output.h:94:22: error: reference ‘counts’ cannot be declared ‘mutable’ [-fpermissive] (0) | 2013.12.19 |
linker.cpp error (0) | 2013.12.19 |
LogFilter : Android Log viewer MFC version (0) | 2013.09.11 |
build error (0) | 2013.07.02 |
bluez scan (3) | 2013.04.03 |
blueZ install at ubuntu 12.04 (5) | 2013.04.02 |
linux blueZ install (9) | 2013.03.28 |