응용프로그램 (Applications)
- 안드로이드 스마트폰에서 사용할 수 있는 일반적인 응용프로그램이다.
- 웹브라우저, 달력, 구글맵, 연락처, 게임 등 사용자 입장에서 가장 많이 사용하는 앱.
- 모두 JAVA로 제작됨.
응용프로그램 프레임워크 (Applications Framework)
- 안드로이드 API가 존재하는 곳.
- 애플리케이션은 API를 통해서 안드로이드 커널에 접근할 수 있다.
- 안드로이드폰 하드웨어에 접근할 때는 JAVA에서 직접 접근하는 것이 아니라 API를 통해서만 가능하다.
안드로이드 런타임 (Android Runtime)
- JAVA 코어 라이브러리와 달빅 가상머신 또는 아트 런타임으로 구성
- 달빅 가상머신과 아트 런타임은 모바일 환경에 최적화되어 있어 여러 개를 동시에 구동 가능
라이브러리 (Libraries)
- 안드로이드에서 사용되는 여러 시스템 라이브러리는 시스템 접근 때문에 JAVA가 아닌 C로 작성되어 있다.
- 따라서, 성능이 뛰어나고 세밀한 조작 가능.
리눅스 커널(Linux Kernel)
- 하드웨어의 운영과 관련된 저수준의 관리 기능
- 주로, 메모리 관리, 디바이스 드라이버, 보안 등이다.
- 안드로이드 커널로 리눅스를 채택한 이유는 오픈 소스라는 장점과 함께 카메라, 터치스크린, GPS, 자이로스코프 등 많은 스마트폰 장치를 지원하기 때문이기도 하다.
더 자세한 내용은 developer.android.com을 참고바란다.
'Mobile > Android' 카테고리의 다른 글
Session 'app': Error Installing APKs 발생시 (1) | 2017.11.09 |
---|---|
Android Studio 3.0에서 XML Layout 이슈 (0) | 2017.11.06 |
JAVA 한글 2Byte 처리방법 (0) | 2017.11.01 |