2.1 개발에 필요한 도구들
안드로이드 프로그래밍을 하기 위해서는 우선 어떤 플랫폼에서 안드로이드 개발이 가능한지 알아야 합니다. 안드로이드는 Windows XP, Vista 등의 윈도 플랫폼과 Mac OS X, Linux 상에서 개발이 가능합니다. 안드로이드 프로그래밍을 하기 위해 안드로이드 단말기가 꼭 필요하지는 않습니다. 안드로이드 SDK에 에뮬레이터를 제공하므로 에뮬레이터 상에서 개발이 가능합니다. 안드로이드 개발에 필요한 시스템 요구 사항은 http://developer.android.com/sdk/requirements.html를 참고하기 바랍니다.
우선 개발 플랫폼이 선정이 되고 나면 안드로이드 SDK(Software Development Kit)를 깔아야 합니다. 지금까지 안드로이드 SDK는 1.1, 1.5, 1.6, 2.0이 출시된 상태입니다. 2009년 11월 현재 2.0이 최신 버전입니다. 이 버전은 지난 달에 출시가 되었습니다. 안드로이드 SDK는 다국어를 지원합니다. 26개 국의 locale을 지원하고 있으며 다양한 에뮬레이터 스킨을 제공합니다. 안드로이드 SDK 다운로드 사이트는 http://developer.android.com/sdk/index.html입니다. Windows 상에서 안드로이드 SDK를 설치하여 에뮬레이터를 실행하는 과정은 별도의 섹션으로 자세히 설명하도록 하겠습니다.
SDK가 설치되고 나면 프로그래밍을 위한 IDE(Integrated Development Environment)가 필요합니다. 안드로이드 프로그래밍을 하기 위해서는 자신이 주로 사용하는 IDE를 사용할 수 있습니다. 그러나 안드로이드 프로그래밍은 이클립스(Eclipse)를 추천합니다. 이클립스는 무료로 사용할 수 있는 IDE고 위 3 가지 개발 플랫폼을 모두 지원합니다. Eclipse IDE 3.4 (Ganymede) 또는 3.5 (Galileo)에서 프로그래밍이 가능하며, 추천 Eclipse IDE 패키지는 Eclipse IDE for Java EE Developers, Eclipse IDE for Java Developers, Eclipse for RCP/Plug-in Developers 중 하나입니다. 다운로드 사이트는 http://www.eclipse.org/downloads/입니다. 이클립스를 이용한 "Hello, Android" 프로그램을 만드는 것에 대해서는 별도의 섹션으로 자세히 설명하도록 하겠습니다.
이 외에 JDK 5 또는 6가 필요하며, Ant 빌드를 원하는 경우는 Apache Ant 1.6.5 이상을 지원합니다. Eclipse에서 안드로이드 프로그래밍을 쉽게 하도록 하는 ADT(Android Development Tools) 플러그인도 설치를 하여야 하며, 이 과정도 별도로 설명을 드리겠습니다.
2.2 안드로이드 SDK 설치하기
안드로이드 SDK에 대한 자세한 설명이나 안드로이드 아키텍처에 대한 설명을 하기 전에 먼저 안드로이드 에뮬레이터를 실행해 보도록 하겠습니다. 뭔가 실제로 돌려 본 후에 나머지를 자세히 알아가는 것도 좋은 방법이기 때문입니다.
(1) 안드로이드 SDK 다운로드
우선 웹 브라우저로 다운 사이트(http://developer.android.com/sdk/index.html)에 접속을 합니다. 다음 그림과 같이 개발 플랫폼에 따른 안드로이드 SDK를 다운로드 화면이 보일 것입니다. 아래 그림의 빨강색 테두리를 친 윈도용 ZIP 파일을 클릭합니다.

그러면 다음 화면이 나옵니다. 빨강색 테두리를 친 부분에 라이선스 동의를 체크를 하면 다운로드 버튼이 활성화가 됩니다. 다운로드 버튼을 눌러서 SDK를 자신이 원하는 임시 폴더에 저장을 합니다. 압축 파일의 이름은 android-sdk_r3-windows.zip로 나타납니다.

다음과 같이 다운로드가 됩니다.

(2) 안드로이드 SDK 설치
다운로드 받은 압축 파일(android-sdk_r3-windows.zip)을 풉니다. 압축 파일을 풀면 android-sdk_r3-windows라는 폴더가 생깁니다. 안드로이드 SDK 설치는 이것으로 끝납니다. 별도의 설치 과정이 필요 없습니다. 필요하다면 이 폴더를 원하는 곳으로 이동하거나 이름을 변경합니다. 저의 경우는 D:\Android로 폴더를 이동하고 이름을 변경하였습니다. 이 폴더 안에 보면 android-sdk-windows라는 폴더가 하나 더 있습니다. 이 안에 있는 폴더도 android-sdk로 변경하였습니다. 이 과정은 중요한 과정은 아니고 불필요하게 폴더가 많아져서 단순화한 것입니다. 안 해도 상관없는 작업입니다.
이 폴더 안에 보면 tools라는 폴더가 있고 그 밑에 android.bat이 있습니다.

DOS 창의 이 tools 폴더에서 여러 가지 도구를 사용할 일이 많습니다. 그래서 이 tools에 대한 경로를 시스템 환경 PATH 설정에 넣어 놓는 것이 좋습니다. 바탕 화면의 내 컴퓨터 아이콘을 오른쪽 클릭하여 속성을 실행하면 시스템 등록 정보 창이 뜹니다. 이 창의 고릅 탭을 눌러 아래 쪽의 "환경 변수" 버튼을 누릅니다. 그리고 아래 쪽의 시스템 변수의 Path를 더블 클릭하면 시스템 변수 편집이 나옵니다. 이 변수 값의 끝에 세미콜론(;)을 치고 위 tools 경로를 추가합니다. 저의 경우 D:\android\android-sdk\tools를 추가하였습니다. 그리고 확인 버튼을 누르고 다시 확인 버튼을 누릅니다. 그리고 다시 확인 버튼을 눌러서 시스템 등록 정보 화면을 닫습니다.

2.3 윈도에서 에뮬레이터 실행시키기
(1) 안드로이드 패키지 설치
안드로이드 책이나 개발자 사이트에는 이클립스 설치에 대해서 설명하고, ADT 플러그인 설치에 대해서 설명하지만 저는 먼저 이 상태에서 에뮬레이터를 띄우는 것을 설명하도록 하겠습니다. 다음 그림과 같이 이 android.bat 파일을 클릭하여 실행하세요.

그러면 다음 그림과 같이 "Android SDK and AVD Manager"가 실행됩니다.

우선 SDK 패키지를 설치해야 합니다. 왼쪽 리스트의 Settings를 선택하면 위와 같은 화면이 나옵니다. 이 화면의 가운데 Misc에 보면 "Force https://... Sources to be fetched using http://..."라고 표시된 것을 체크합니다. 그러면 "Save & Apply" 버튼이 활성화되며 이 버튼을 클릭합니다.
그리고 왼쪽 리스트의 Available Packages를 선택하고 오른쪽의 URL에 있는 체크 박스를 체크합니다.

그러면 설치 가능한 SDK 목록 리스트가 아래 그림과 같이 표시됩니다. 모두 선택된 상태로 표시되는데 아래 그림과 같이 "Google APIs by Google Incl, Android API"는 최신 버전 "5, revision 1"을 선택하고, "Android 2.0 API"는 "5, revision 1"을 선택하고, "Documentation for Android SDK, API 5, revision 1"과 "Usb Driver package, revision 2"를 선택합니다. 오른쪽 아래의 "Install Selected" 버튼을 클릭합니다.

(Troubleshooting) 위 https가 동작하지 않는 경우는 왼쪽 하단의 "Add Site..." 버튼을 눌러서 "https"의 "s"를 뺀 http://dl-ssl.google.com/android/repository/repository.xml을 입력합니다.
그러면 다음과 같이 설치할 패키지를 선택하라고 나오며 "Accept all"을 누르고 "Install Accepted"를 누릅니다.

그러면 다음 그림과 같이 다운로드가 시작됩니다. 약 10 ~30분 정도 오래 걸리는 작업이며 이 작업이 끝나면 "Close" 버튼을 눌러서 이전 창으로 돌아 옵니다.

(2) 안드로이드 가상 장치 설정
AVD는 Android Virtual Device의 약자이며, 에뮬레이터에서 가상의 장치를 설정하기 위한 용도로 사용됩니다. 에뮬레이터가 실행될 환경의 안드로이드 버전과 LCD 크기, SD 카드 크기 등을 설정해 주는 역할을 합니다. 앞 화면에서 이어서 계속됩니다. 왼쪽 리스트의 "Virtual Devices"를 선택하면 AVD를 생성할 수 있는 화면이 나옵니다.

위 화면의 "New" 버튼을 클릭하면 다음과 같은 화면이 나옵니다. "Name"은 AVD의 이름입니다. 여러 가지 virtual device를 만들 수 있으므로 적절한 이름을 지어주면 됩니다. 나중에 에뮬레이터를 실행시킬 때 어떤 virtual device에서 실행할 지 물어볼 때 이 이름이 나타납니다. 일단은 "android20"을 입력해 봅시다. 그리고 "Target"은 안드로이드 버전을 선택합니다. 앞의 안드로이드 패키지 설치에서 설치한 패키지가 보이며 "Android 2.0 - API Level 5"를 선택합니다. "SD Card"의 "Size"는 SD Card 용량을 나타냅니다. 임의로 입력을 하면 됩니다. 256을 입력해 보죠. "Skin"은 LCD 크기를 지정하거나 내장된 것을 선택할 수 있습니다. 일단 내장된 "Default (HVGA)"가 기본으로 선택되어 있습니다. 기타 "Hardware"는 장치에 부착된 하드웨어가 무엇이 있는지 선택하여 추가하는 것입니다. 기본으로 "Abstracted LCD density"이 추가되어 있습니다. 그리고 하단의 "Create AVD" 버튼을 클릭합니다.

위와 같이 하여 AVD가 하나 만들어졌다는 메시지 박스가 뜨면 "OK" 버튼을 누릅니다. 추가로 만들고 싶은 경우는 다시 "New" 버튼을 클릭하여 원하는대로 만들 수 있습니다. 일단은 에뮬레이터를 띄우기 위해서 하나만 있으면 충분하므로 우상귀의 x 버튼을 눌러서 "Android SDK and AVD Manager"를 종료합니다. 나중에 다시 추가/변경/삭제를 하고 싶으면 android.bat을 실행시키거나 이클립스의 Windows -> "Android SDK and AVD Manager..."를 실행하여 변경이 가능합니다.

(3) 안드로이드 에뮬레이터 실행
DOS 창을 실행합니다. 윈도 시작 버튼에서 "실행(R)..."을 눌러 "cmd"를 입력하여 확인을 누립니다. 여기서 에뮬레이터를 실행합니다. 다음과 같이 에뮬에이터를 실행합니다.
여기서 "android20"은 AVD를 만들 때 지정한 이름입니다. 만약 다른 이름으로 지정하였으면 그 이름을 쓰면 됩니다. 만약 환경 설정의 PATH에 tools 폴더를 넣지 않았다면 안드로이드 SDK의 tools 폴더로 이동을 한 후에 실행해 주세요. 그러면 다음 그림과 같이 에뮬레이터가 실행됩니다. 다음과 에뮬레이터가 보이면 '빙고~' 모든 과정이 성공적으로 끝난 것입니다. 혹시 아래 화면이 아니고 자물쇠가 보이면 이것을 오른쪽으로 돌리면 lock이 풀립니다. 이것 저것 에뮬레이터를 동작시켜 보세요. 안드로이드의 세계에 들어 오신 것을 환영합니다.

(Troubleshooting) 만약 위와 같은 화면이 안 나오고, 아래 그림과 같은 에러 메시지가 나오는 경우는 여러 가지 원인이 있을 수 있습니다.

그러나 대부분의 원인은 위 그림에서 보듯이 윈도 로그인 계정을 한글로 사용한 경우입니다. 안드로이드에서는 설정 정보가 C:\Documents and Settings\<사용자 계정>\.android 밑에 관리됩니다. 특히 이 폴더의 avd 폴더가 virtual device 설정 정보가 보관되는 곳입니다. 제가 방금 만든 AVD는 C:\Documents and Settings\강재우\.android\avd\android20.avd에 관리가 되네요.
이 문제의 해결책은 몇 가지가 있습니다. 우선 계정을 한글이 아닌 영어로 쓰고 다시 위 과정을 반복하면 쉽게 해결이 됩니다. 다른 해결책으로는 안드로이드에서 제공하는 android.bat 파일로 move avd를 하는 것입니다. 우선 안드로이드에서 기본 제공하는 기능으로 해결해 보겠습니다. 다음 그림과 같이 "android move avd -n android20 -p d:\android\avd"를 실행시켜 보겠습니다. 아래 그림과 같이 아직도 에러가 나네요. 원인이 무엇인지는 모르겠으나 안드로이드가 기존에 있던 폴더에 한글이 있어서 "move avd"도 실행이 제대로 되지 않는 것이 아닌가 추정됩니다. (원인을 정확히 아시는 분은 알려 주세요.) 혹, 계정을 영문으로 사용하시는 분은 AVD를 옮길 때 아래와 같이 하면 원하는 곳으로 AVD를 이동할 수 있으니 참고하시기 바랍니다.

그러면 다른 해결책은 무엇이 있을까요? 직접 C:\Documents and Settings\강재우\.android\avd 폴더에 가 보면 해결책이 보입니다. android20.ini 파일을 열면 다음 그림과 같이 path 변수에 새로 만든 AVD 파일의 경로가 보일 것입니다.

위 경로에 있는 android20.avd를 한글이 없는 곳으로 옮긴 후에 위 경로를 이동한 곳으로 변경해 주면 됩니다.

위와 같이 저는 변경을 하였고, android20.avd도 d:\android\avd 폴더로 옮겼습니다. 그러면 다시 에뮬레이터를 "emulator @android20"로 실행을 시켜 볼까요? 빙고~ 안드로이드 에뮬레이터가 뜨네요. 그런데 이상합니다. DOS 창이 하나 생겨서 "Error Laoding Prefrences"라는 메시지가 뜨네요. 화면에는 "ANDROID _"라는 문구가 보이고 커서가 깜빡이다가 ANDROID 로고가 바뀌고 글자가 깜빡이네요. 한 참 기다리면 위 안드로이드 홈 화면이 뜹니다. 에물레이터를 종료하고 다시 실행하니까 "Error Laoding Prefrences"가 다시 안 뜹니다. DOS 창에서 AVD를 만들고, 옮기고, 삭제하는 등의 방법에 대해서는 http://developer.android.com/guide/developing/tools/avd.html를 참고하시기 바랍니다.
3 장에서는 이클립스 IDE를 설치한 후에 "Hello, Android" 샘플 프로그램을 제작하여 에뮬레이터에서 띄워 보는 것을 설명하겠습니다.
끝.

댓글 없음:
댓글 쓰기