[android] VirtulBox로 AVD(Android Virtual Device) 돌리기
윈도우, 이클립스, ADT Plugin 개발환경에서..
번거로운것중 하나가.. AVD 돌리는 일이다.
그래도 한번 뛰워놓으면 테스트하는데 크게 불편은 없지만.. 일단 기동되는데 시간도 오래걸리고..
또 속도도 느린것 같다..(아직까진 간단한 어플만 짜봐서.. 크게 불편하진 않았다..)
찾아보니.. x86에 포팅된 에뮬이 있어서.. 설치해봤다.
일단.. (언제나 그렇지만..) 담에 혹시 또 내가 쓸일이 있을까봐.. 기록해둔다.
1. http://www.android-x86.org/download 에서 원하는 버전의 iso 파일 다운.
2. VirtualBox 실행.. VM만들기..
– 가상머신 이름 : And_23 (알아서들 하시길..)
– 운영체제 : Linux / Other Linux
– 나머진.. 모두 알아서.. (난 귀찮아서 다 디폴트값..)
3. VM설치 (귀찮아서 대부분 디폴트값.)
– CD/DVD 드라이버에 받은 파일(iso) 마운트
– Installation 어쩌구 선택
– Choose Partition에서 Create/Modify partitions
– cfdisk에서 New -> Primary -> 엔터 -> Bootable -> Write -> yes -> Quit
– 파티션선택 : sda1 / 파일시스템 : ext3 / GRUB : Yes
– /system as read-write : Yes
– Create a fake SD card -> 엔터
– (CD/DVD iso파일 해제)
4. 해상도 설정
– cmd실행후 VirtualBox가 설치된 폴더로 가서 다음과 같이 실행
======
VBoxManage setextradata “And_23” “CustomVideoMode1” “480x800x16”
VBoxManage setextradata “And_23” “CustomVideoMode2” “320x480x16”
======
– And_23 실행.. Debug mode로 시작
======
mount -o remount,rw /mnt
vi /mnt/grub/menu.lst
======
중간에.. 다음과 같이 “UVESA_MODE=480×800” 혹은 “UVESA_MODE=320×480” 문구를 넣어준다.
(난 HDPI는 480×800, MDPI=320×480 으로 해놓고.. 디폴트를 1로 해서.. MDPI로 해놨다.)
======
kernel /android-2.3-RC1/kernel quiet root=/dev/ram0 androidboot_hardware=eeepc acpi_sleep=s3_bios,s3_mode UVESA_MODE=480×800 DPI=240 SRC=”/android-2.3-RC1 SDCARD=/data/sdcard.img
======
– 저장하고 exit 한뒤에.. 머신을 껐다 재시작.
5. 개발환경 설정하기..
– android실행후, Alt+F1해서 shell로 들어와서.. netcfg 로 해서 ip 확인 (192.168.xx.xx)
– 윈도우에서 cmd -> adb connect 192.168.xx.xx
( 혹, 윈도우에서 안드로이드 ip로 연결안되고, ping도 안가면.. 네트웍 설정 변경하니 되더라… VirtualBox에서 And_23 설정에서.. 네트워크->어댑터1을 NAT대신에 “호스트 전용 어댑터”를 선택한다.
==> 추가: 이렇게 했더니.. 가상머신에서 호스트(PC)하고만 연결되고, 외부(인터넷)연결이 안된다. 네트웍카드를 추가하는 방식도 있다하던데.. 좀 더 알아봐야할듯.
일단.. 포트포워딩으로 해결.. 안드로이드 네트워크를 NAT로 해놓고, 고급눌러서 포트포워딩 5555(PC)->5555(AVD) 설정해놓으면.. adb connect 127.0.0.1 으로 연결된다. )
※ 키보드 안내
– 뒤로 : 마우스 우클릭, 혹은 ESC
– 홈 : Home
– 메뉴 : 메뉴키(Alt, Ctrl 사이에 있는..), 혹은 F2
– Alt+F1 : 콘솔모드 / Alt+F7 : 복귀 / Alt+F3 : 통화목록