Page 411 - 완) I MDP 프로젝트 작품 보고서(전체과 1학년)1.6
P. 411
네이티브 C/C++ 라이브러리
ART 및 HAL 등의 많은 핵심 Android 시스템 구성 요소와 서비스가 C 및 C++로 작성된 네이티브 라
이브러리를 필요로 하는 네이티브 코드를 기반으로 빌드되었습니다. Android 플랫폼은 Java 프레임워크
API를 제공하여 이러한 일부 네이티브 라이브러리의 기능을 앱에 노출합니다. 예를 들어, Android 프레
임워크의 Java OpenGL API를 통해 OpenGL ES에 액세스하여 앱에서 2D 및 3D 그래픽을 그리고 조작
할 수 있는 지원 기능을 추가할 수 있습니다.
C 또는 C++ 코드가 필요한 앱을 개발하는 경우에는 Android NDK를 사용하여 네이티브 코드에서 직
접 이러한 몇몇 네이티브 플랫폼 라이브러리에 액세스할 수 있습니다.
Java API 프레임워크
Android OS의 전체 기능 세트는 Java 언어로 작성된 API를 통해 액세스할 수 있습니다. 이러한 API
는 핵심 모듈식 시스템 구성 요소 및 서비스 재활용을 단순화하여 Android 앱을 제작하는 데 필요한 빌
딩 블록을 구성하며, 이러한 빌딩 블록에는 다음이 포함됩니다.
기능이 풍부하며 확장 가능한 뷰 시스템 - 목록, 그리드, 텍스트 상자, 버튼 및 삽입 가능한 웹 브
라우저를 포함하여 앱의 UI를 빌드하는 데 사용 가능
Resource Manager - 현지화된 문자열, 그래픽 및 레이아웃 파일과 같은 코드가 아닌 리소스에 대
한 액세스 제공
Notification Manager - 모든 앱이 상태 표시줄에 사용자 지정 알림을 표시할 수 있도록 지원
Activity Manager - 앱의 수명 주기를 관리하고 공통 탐색 백 스택 제공
콘텐츠 제공자 - 앱이 주소록 앱과 같은 다른 앱의 데이터에 액세스하거나 자신의 데이터를 공유할
수 있도록 지원
개발자는 Android 시스템 앱이 사용하는 것과 동일한 프레임워크 API에 대한 전체 액세스 권한을 가
짐
시스템 앱
Android는 이메일, SMS 메시징, 캘린더, 인터넷 검색, 주소록 등의 주요 앱 세트와 함께 제공됩니다.
플랫폼에 기본적으로 포함된 앱에는 사용자가 설치하도록 선택하는 앱과 구별되는 특별한 상태가 없습
니다. 따라서 타사 앱이 사용자의 기본 웹 브라우저, SMS 메시징 또는 기본 키보드가 될 수 있습니다
(단, 시스템의 설정 앱 등 가지 예외가 적용될 수 있음).
시스템 앱은 사용자를 위한 앱으로도 작동하고 개발자가 자신의 앱에서 액세스할 수 있는 주요 기능
을 제공하기 위한 용도로도 작동합니다. 예를 들어, 앱이 SMS 메시지를 제공하고자 할 경우 해당 기능
을 직접 빌드할 필요가 없습니다. 그 대신, 이미 설치된 SMS 앱을 호출하여 지정한 받는 사람에게 메
시지를 제공할 수 있습니다.
인천전자마이스터고등학교
- 404 -