안드로이드 1.5 SDK가 릴리즈 되면서 개발 환경에서 변경되어 반드시 알아야할 부분이 Android Virtual Device (AVD) 입니다.  여러 버전의 안드로이드 단말이 존재할 수 있기 때문에 작성하는 어플리케이션을 각각의 버젼과 SDK Add-On에 맞게 테스트해볼 수 있는 에뮬레이터 환경입니다. 이것은 실제 안드로이드 단말이 다양한 하드웨어로 구성될수 있고, 서로 다른 플랫폼 버젼, SDK Add-On 등이 존재할 수 있는데 개발자가 이 모든 단말을 가져 있지 않더라도 에뮬레이터 환경에서 관리할 수 있도록 합니다. 예를 들어 카메라가 있는 경우, 쿼티자판이 있는 경우, 1.1 SDK 탑재한 단말, 1.5 SDK를 탑재한 단말들 여러가지 구성을 가지고 있는 가상의 장치를 만들수 있는 개념입니다.

각각의 가상 단말 (Virtual Device)는 SDK버젼을 지정할 수 있고, 스킨도 지정할 수 있으며, 사용하는 SD Card도 지정할 수 있게 되어 있습니다.  AVD의 관리는 tools 밑에 있는 android 명령어로 할 수 있습니다. 현재는 이클립스의 AVD Manager로 처리 가능합니다. http://www.androidpub.com/35413 로 좀더 편리하게 생성하세요.

1. 사용가능한 타겟 이미지를 확인합니다.

$ android list targets
Available Android targets:
id:1
Name: Android 1.1
Type: platform
API level: 2
Skins: HVGA (default), HVGA-L, HVGA-P, QVGA-L, QVGA-P
id:2
Name: Android 1.5
Type: platform
API level: 3
Skins: HVGA (default), HVGA-L, HVGA-P, QVGA-L, QVGA-P
id:3
Name: Google APIs
Type: add-on
Vendor: Google Inc.
Description: Android + Google APIs
Based on Android 1.5 (API level 3)
Libraries:
* com.google.android.maps (maps.jar)
API for Google Maps
Skins: HVGA (default), HVGA-L, QVGA-P, HVGA-P, QVGA-L

공식 1.5 SDK를 설치한 상태라면 위와 같은 타겟 리스트가 표시될 것입니다. 1번은 Android 1.1 SDK 2번은 Android 1.5 SDK 그리고 3번의 경우 1.5SDK에 외부 라이브러리인 구글맵 라이브러리가 포함된 타겟입니다. 

2. AVD의 생성
$ android create avd -n myandroid1.5 -t 2 

위 명령어로 1.5 SDK를 사용하는 장치를 생성합니다. 
-n 으로 avd의 이름을 정해주고, 
-t로 위의 타겟 리스트에서 표시된 숫자를 정해줍니다.

실행을 하면

Android 1.5 is a basic Android platform.
Do you wish to create a custom hardware profile [no]

와 같이 커스텀 하드웨어 옵션을 설정하라고 나타납니다. 사용할 것이 아니면 그냥 엔터를 눌러 넘어가시면 됩니다. 

$ android create avd -n myandroid1.1 -t 1
위와 같이 한다면 1.1 sdk가 생성되겠지요. 그냥 타겟에 있는 것들 하나씩 생성해놓으면 될듯 합니다. 

$android create avd -n sdcard1.5 -t 2  -c 1000M
위와 같이 하면 sdcard를 사용하도록 할 수 있습니다. 

3. 설치된 AVD 확인 

$ android list avds 

명령어로 제대로 avd가 생성되었는지 확인해보시면 됩니다.