본문 바로가기

Android

[버섯][Android] 간단한 테스트 환경 구축(가상 안드로이드 환경 구축하기)


안녕하세요 버섯돌이 유재성입니다.

 

SDK를 이용하여 개발된 결과 물을 확인하는 가장 편한 방법은 안드로이드 폰에서 직접 테스트 하는 것이지만

여의치 않는 경우를 대비해 개발 환경 구축에이어 테스트를 위한 가상 환경을 구축해 보겠습니다.


일반적으로는 빨간색으로 표시한 "Android Virtual Device Manager" 아이콘을 클릭해서


"Android Virtual Device Manager"를 실행하면 됩니다.



위 화면에서  "New.." 버튼을 클릭후 "Target"에서 테스트하고자 하는 API에 맞게
SDK를 선택 하신 후 나머지 정보는 대충 입력하시면 어렵지 않게 단말 등록이 가능합니다.
입력 항목들이 직관적이라 Target외에는 크게 어려운 부분이 없으며 단말이 등록되었으면
위 화면에서 등록된 가상 단말을 선택 후 우측 하단의 "Start.." 버튼을 클릭해서 정상 구동 여부를 확인 가능합니다.

개발중인 프로그램의 테스트는 프로그램 실행시 실행 할 타겟에 위에서 추가한 가상 단말을 선택하시면됩니다.
이와 관련된 방법은 인터넷에서 어렵지 않게 찾을 수 있으니 검색 해보시기 바라며...

오늘은 VirtualBox를 이용한 Android OS 환경을 구축하는 방법에대해 살펴 보겠습니다.
각자 장/단점이 있으니 자신에게 편한 방법을 사용하세요.^^

[VirtualBox 설치]

VirtualBox 사이트로 이동 후 좌측 메뉴에서 "Downloads"를 클릭합니다.



다운로드 화면이 나오면 아래 빨간색으로 표시한 부분들을 클릭해서 파일을 다운로드 받습니다.



"VirtualBox 4.2.18 for Windows hosts"는 윈도우즈용 Virtualbox 실행 파일입니다.
실행 파일을 클릭해서 Next 하시면서 설치하시면 됩니다.

설치가 완료되면 그 아래 빨간색으로 표시한 "Virtualbox 4.2.18 Oracle VM VirtualBox Extension Pack"을 다운로드 후
해당 파일을 더블 클릭하시면 자동으로 설치가 완료됩니다.

여기까지 하시면 VirtualBox의 설치는 끝입니다.^^
Virtualbox와 관련된 세부 내용은 인터넷 자료들을 찾아 보세요.


[AndroidVM 설치]

안드로이드 환경을 구축하는 방법은 몇 가지가 존재하는데 개인적으로 AndroidVM이 가장 완성도가 높은것 같더군요.

Virtualbox 환경에서 고해상도의 앵그리 버드도 상당히 부드럽게 동작 할 정도로 완성도가 높습니다.

다만, 몇 달전에 사용했을 때 국내 사이트의 경우 HTML5에 문제가 있는지 심하게 깨지는 경향이 있더군요.

지금은 많이 개선되었는지 모르겠지만 CSS등과 관련된 테스트의 경우 다른 VM을 설치하시는게 좋으리라 봅니다.^^

 

 

 

테스트 환경을 위한 VM을 다운로드 받기 위해 http://androvm.org/blog/download/ 로 이동합니다.

 

 

파일명을 보면 알 수 있겠지만 파일명 끝의 t테블릿 / pphone 버전을 의미합니다.

구글앱스가 설치된 버전도 있으니 각자 필요한 용도로 받아서 사용하셔도 됩니다.

저는 편의상 첫번째인 아래 파일을 다운로드 했습니다.

"vbox86tp version : androVM_vbox86tp_4.1.1_r6.1-20130222.ova"

 

 



다운 받은 위 파일을 더블 클릭하면 VirtualBox가 자동으로 실행 되면서 아래와 같은 화면이 나옵니다.

 

단순히 "가져오기"를 클릭하시면 VM이 자동으로 등록됩니다.

 


 

위 처럼 "androVM_vbox86tp_4.1.1_r6.1-20130222" 이미지가 자동으로 등록됩니다.
아직 "설정"버튼을 클릭하지 마세요.^^
(등록된 VM들 그림판에서 제거하기 귀찮아서 그냥 아래 이미지를 중복 사용 합니다.^^;;;)

이제 성능 향상및 ADB 사용을 위한 추가 환경 설정을 할 차례입니다.

VirtualBox의 File메뉴를 클릭 한 후 "환경 설정"을 선택 합니다.


환경 설정화면의 좌측 메뉴에서 "네트워크"를 선택 합니다.

 

정상적이라면 위 처럼 호스트 전용 네트워크가 하나 추가되어 있을 것입니다.

만약 추가되어 있지 않다면 우측의 +버튼을 클릭 하셔서 추가 하시고..

위 이미지 처럼 추가된 이름을 선택 후 우측의 드라이버 아이콘을 클릭합니다.

 

 

위 처럼 "DHCP 서버" 탭을 클릭 해서 "서버 사용함"이 활성화 되어 있는지 확인합니다.

모두 정상적이라면 확인을 클릭합니다.

이제 ADB 사용을 위해 등록된 VM이미지의 네트워크 설정을 할 차례입니다.^^


 

가져오기로 추가한 "androVM_vbo.."을 선택 후 "설정" 아이콘을 클릭합니다.

 


 

 

좌측 메뉴에서 "네트워크"를 선택 하신 후 "어댑터1"을 선택 합니다.

어댑터1은 기본적으로 비활성화 되어 있는데 ADB를 위해서는 반드시 활성화 해줘야 합니다.

"네트워크 어댑터 사용하기"를 체크 하신 후 반드시 "호스트 전용 어댑터"를 선택 하시기 바랍니다.


 


좌측 창에서 등록된 이미지를 선택 하신 후 빨간색으로 표시한 "시작" 이미지를 클릭하시면 해당 VM을 실행 할 수 있습니다.

 

 

조금만 기다리면 위처럼 "안드로이드 4.1.1" 버전이 구동된 화면을 볼 수 있습니다.

 

 

[ADB 연결]

그럼 이제부터 ADB 사용을 위한 환경 설정을 살펴 보도록 하겠습니다.

(사실 환경 설정 자체는 이미 초반에 다 해 놨습니다.^^)

 

개발시 ADT에서 위 VM이미지와 연결 하기 위해서는 ADB를 이용하면 되는데..

다른 VM이미지들과 달리 "USB debugging" 옵션을 활성화(체크) 할 필요는 없는것 같네요.^^

 

 

홈 화면에서 프로그램 목록 아이콘을 클릭하셔서 프로그램 목록으로 이동 합니다.

 

좌측 상단에 보시면 "androVM configuration"아이콘이 있는데 실행 합니다.

 

여기서 가장 중요한 부분은 가장 상단에 나오는 IP 정보입니다.

제 경우 "192.168.56.101"로 나오는군요.

이 IP주소가 바로 adb로 연결 할 주소입니다.

IP주소가 나오지 않는다면 초반의 호스트 어댑터 설정과 랜카드 설정을 확인하시기 바랍니다.

참고로, Hardware OpenGL을 선택하시면 앵그리 버드등도 쾌적한 환경으로 즐길 수 있습니다.^^


ADB 사용을 위해 윈도우즈 좌측 하단의 시작>실행을 선택 후 cmd를 실행해서 콘솔 창을 띄웁니다.



위 처럼 "adb connect IP주소" 를 입력하면 adb를 VM에 연결 할 수 있습니다.

이해를 돕기위해 VM에 출력된 IP화면과 함께 캡춰했으니 어렵지 않으리라 봅니다.

 

 

[테스트용 샘플]

간단한 테스트를 위해 HelloWorld를 출력하는 앱을 하나 만들어 보겠습니다.

 

File > New > Android Application Project 를 선택합니다.




간단히 프로그램 이름에 HelloWorld라고 입력합니다. (나머지 항목은 자동으로 입력됩니다.)

 

여기서 주의 깊게 봐야 할 부분은 컴파일 환경이 "API 18: Android 4.3"으로 되어 있습니다.

앞의 ADT 환경 설정 부분에서 반드시 API 18을 모두 설치하시기 바랍니다.



단순히 Next~ 만 하시면 됩니다.

 

단순히 Next~ 만 하시면 됩니다.





단순히 Next~ 만 하시면 됩니다.




Finish를 클릭하시면 간단한 샘플 프로젝트가 생성됩니다.

만약, 필요한 SDK가 설치되어 있지 않다면 Finish 버튼이 비활성화되니 필요한 SDK부터 설치하시기 바랍니다.

 

Finish를 클릭하면 아래처럼 생성된 소스를 볼 수 있습니다.

 

좌측 트리메뉴에서 "HelloWorld"라고 적혀있는 프로젝트 이름에서 우클릭 후

"Run As > Android Application"을 선택 합니다.



그러면 어떤 환경에서 실행 할 것인지 선택하는 화면이 나옵니다.

 

위의 ADB 연결 과정을 정상적으로 진행 하셨다면 위 처럼 "Choose a running Android device"항목에 장치가 등록되어 있을 것입니다.


 

ADB로 연결된 장치를 선택하고 OK를 선택합니다.



 

 

VirtualBox에서 구동중인 화면을 보시면 눈깜짝 할 사이에 위와 같은 앱이 실행된걸 볼 수 있습니다.^^

가상 단말을 추가하는것과의 차이점은 VM을 실행해 놓은 상태에서는 위 처럼 초고속으로 개발이 가능하다는 장점이 있습니다.^^

VirtualBox 자체가 무겁지 않다보니 구동 속도도 상당디 빠르고 AndroidVM의 경우 OpenGL 가속 때문에

그래픽 속도도 좋아서 개발하는데 많은 도움이 되리라 봅니다.

 

하지만.. 역시 제 폰처럼 구린 폰이 아닌 이상은 안드로이드 폰으로 직접 개발하는게 최고죠..^^:;;

초보자도 따라할 수 있을정도로 나름 자세하게 적었으니 안드로이드 개발자가 아닌 관계로 질문은 사양하며..

잘 안되면 화면을 하나씩 잘 살펴보시고 에러 메세지를 기반으로 인터넷에서 검색해보세요.^^

그럼 안드로이드 개발하는데 있어 도움이 되었길...

 

 

[디버깅 옵션 위치]

adb 사용을 위해서는 위에 설명했듯이 설정이 없지만...

화면 캡춰는 해 놓으니 혹시라도 다른 이미지나 기타 이유로 설정 위치가 궁금한 분들은 참고 하시기 바랍니다.







 

 

추신)

당연하겠지만 VM 환경이다보니 원하는대로 동작하지 않는 경우도 많고...

VM에서 된다고 해도 실제 폰에서는 안될 수 있으며 그 반대 상황도 가능하니

반드시 실제 안드로이드 폰에서 테스트 하셔야 합니다.

 

어디나 정답은 없으니 실제 단말이든 가상 단말이든 VM이든 그 상황에서 편한 환경을 취하시기 바랍니다.^^

 

[단축키]

F1 : 메뉴 버튼