소개
Android는 Symbian, iOS, Windows® Mobile 및 기타 등등 유사한 모바일 운영 체제이다. 이는 처음에 Android Inc.라는 회사에서 개발되었고, 이 회사는 이후에 Google에 팔렸다. 이는 현재 Open Handset Alliance에서 소유하지 않으며, 증가하고 있는 대중성을 고려하여 전체적으로 오픈소스화되었다. Google은 Apache License에 따라 대부분의 Android 코드를 릴리스하였다. 이 라이센스를 통해 공급업체들은 오픈 소스 커뮤니티로 다시 제출하지 않고도 전매 확장을 추가할 수 있다. 많은 수의 Android 버전들이 파워팩 Froyo(V2.2)를 포함하여 개시(2010년 3/4분기 이후로 가장 최신) 이후로 시장에서 인기를 끌고 있다. Android는 단순히 모바일 디바이스를 위한 플랫폼의 차원을 넘어서, 새 Google TV는 Android에서도 실행된다.
Android는 수정된 Linux® 커널을 사용하고 애플리케이션이 Java 라이브러리를 사용하여 Java™ 기술에서 개발되도록 허용한다(이들 중 일부는 Android용 Google에서 개발됨). Android 애플리케이션들이 Java 언어로 쓰여지는 동안, 플랫폼에서는 Java 가상 머신이 없으며 Java 바이트 코드가 실행되지 않는다. Java 클래스들은 Dalvik 실행 파일로 다시 컴파일되어 Dalvik 가상 머신에서 실행된다. Dalvik은 Android용으로 개조된 VM이며, 배터리 전원과 낮은 CPU 성능으로 실행 중인 최적화된 디바이스이다.
개발자들에게 Android SDK는 디버거, 라이브러리, 핸드셋 에뮬레이터, 문서, 샘플 코드 및 튜토리얼을 비롯하여 풍부한 도구 세트를 제공한다. Android 애플리케이션들은 ADT(Android Development Tools)라는 플러그인의 지원으로 Eclipse(Android의 공식적인 개발 플랫폼)를 사용하여 간편하게 개발될 수 있다. 이는 내용 지원, Java 검색, 오픈 리소스, JUnit 통합 등 Eclipse의 풍부한 기능 및 Android 앱을 개발하기 위한 다른 관점과 시각을 활용하는 데 유용하다. Java 스윙 위젯과 유사한 광범위한 위젯들은 앱을 위한 풍부한 UI를 작성할 때에 활용한다. 자세한 Javadoc은 개발 프로세스를 매우 간편하게 만들어 준다.
여기에서는 Android 개발을 위한 시스템을 준비하는 안내서로 시작한다. 그 후에 기본 Hello World Android 앱을 사용하여 간략하게 Android 애플리케이션의 핵심적인 사양들을
다룬다. 또한 Android 앱을 구성하는 파일과 UI가 구현에서부터 어떻게 분리되는 지에 대해서도 이야기한다. Eclipse에서 Android 앱의 작성, 개발 및 시작하는 프로세스를
다룬 후에, 풍부한 UI를 빌드하는 데 유용한 몇 가지 Andriod 위젯에 대한 논의로 넘어간다(모바일 앱의 매우 중요한 부분임). 몇 가지의 기본 위젯들은 샘플 애플리케이션의 지원을
통해 시연한다. 전화번호부와 같은 애플리케이션에서 listView 위젯을 사용하는 것과 이를 구현할 수 있는 방법에 대해서도 논의한다. 그 사이에 OS에서부터
애플리케이션이 일부 데이터에 액세스 가능하도록 설정해야 하는 권한에 대해서도 이야기한다. 결과적으로 두 세 시간 동안 이 기사를 보면서 깔끔한 UI가 있는 기본 기능을 구현하는
하나의 앱을 작성할 수 있어야 한다.
Android 개발을 시작하기 전에 반드시 다음 사항들을 설치해야 한다.
- Eclipse SDK — V3.5는 최신 Android SDK로 사용하기 위해 권장된다. 이는 Galileo 다운로드 페이지에서부터 다운로드할 수 있다.
- Android SDK
- Android Development Tools(ADT) — 이는 Eclipse 플러그인이다. Android 개발을 위한 JDT(Java Development Tools)에 상응한다. ADT 플러그인의 설치 및 Eclipse에서 Android SDK의 위치 설정을 위한 자세한 지시사항을 따르기 바란다.