안드로이드 스튜디오를 사용해 보기 위해, 설치하고 (0.8.9 베타) 가상 안드로이드 장치를 만들어 실행해 보았으나 아래와 같은 에러 메시지가 나타났습니다.
내용은 아래와 같은데요...
Starting emulator for AVD 'Nexus_4_768x1280_5_4.4.2_ARM'
emulator: ERROR: This AVD's configuration is missing a kernel file!!
해결해 보려고 여러 방법을 시도해 보고, 구글도 한참 찾아 헤매다 성공한 방법이 있어서 포스팅합니다.
증상은 같지만, 상황이 다른지 다양한 해결책들이 검색되었지만, 제 경우는 이 방법만 성공하더군요.
제가 사용한 해결 방법에 대해서는, http://stackoverflow.com/questions/8190820/scala-android-newbie/15971119#15971119 의 답변 중에 나와 있고, 절차를 간단히 적어보겠습니다.
먼저, AVD 매니저를 띄우고, 생성한 에뮬레이터를 선택한 다음에, 우측 [Details] 버튼을 누릅니다.
그러면, 아래와 같이 안드로이드 가상머신이 생성된 위치를 알 수 있죠. oooooo.avd 는 파일이 아니라 디렉터리 입니다.
AVD 가 있는 디렉터리 안으로 들어가면 config.ini 라는 파일이 있습니다. (위 화면과 같이 기본 안드로이드 가상 머신 디렉터리는 히든 디렉터리이기 때문에(맥에서는 . 으로 시작하는 디렉터리는 히든 디렉터리입니다), 파인더에서는 보이지 않으므로, 터미널을 통해 접근 하든지, ForkLift 같은 써드파티 파인더를 이용하든지, 어쨌든 텍스트 에디터로 config.ini 파일을 엽니다.
생성한 에뮬레이터마다 다르지만, 대략 아래와 같은 형식으로 이루어져 있습니다.
avd.ini.encoding=ISO-8859-1
abi.type=armeabi-v7a
avd.ini.encoding=ISO-8859-1
disk.dataPartition.size=200M
hw.accelerometer=yes
hw.audioInput=yes
hw.battery=yes
hw.camera.back=none
hw.camera.front=none
hw.cpu.arch=arm
hw.cpu.model=cortex-a8
hw.dPad=no
hw.device.hash2=MD5:6930e145748b87e87d3f40cabd140a41
hw.device.manufacturer=Google
hw.device.name=Nexus 4
hw.gps=yes
hw.keyboard=no
hw.lcd.density=320
hw.mainKeys=no
hw.ramSize=1907
hw.sdCard=on
hw.sensors.orientation=yes
hw.sensors.proximity=yes
hw.trackBall=no
image.sysdir.1=system-images/android-16/default/armeabi-v7a/
skin.dynamic=yes
skin.name=768x1280
skin.path=768x1280
tag.display=Default
tag.id=default
vm.heapSize=64
중요한건, 위에서 빨간색으로 표시한 부분인데, 그 아래에 아래와 같은 내용을 추가해 줍니다.
image.sysdir.2=system-images/android-16/armeabi-v7a/
이제, 아래와 같은 형태가 되겠ㅈ?
avd.ini.encoding=ISO-8859-1
abi.type=armeabi-v7a
avd.ini.encoding=ISO-8859-1
disk.dataPartition.size=200M
hw.accelerometer=yes
hw.audioInput=yes
hw.battery=yes
hw.camera.back=none
hw.camera.front=none
hw.cpu.arch=arm
hw.cpu.model=cortex-a8
hw.dPad=no
hw.device.hash2=MD5:6930e145748b87e87d3f40cabd140a41
hw.device.manufacturer=Google
hw.device.name=Nexus 4
hw.gps=yes
hw.keyboard=no
hw.lcd.density=320
hw.mainKeys=no
hw.ramSize=1907
hw.sdCard=no
hw.sensors.orientation=yes
hw.sensors.proximity=yes
hw.trackBall=no
image.sysdir.1=system-images/android-16/default/armeabi-v7a/
image.sysdir.2=system-images/android-16/armeabi-v7a/
skin.dynamic=yes
skin.name=768x1280
skin.path=768x1280
tag.display=Default
tag.id=default
vm.heapSize=64
이제 저장하고, AVD 매니저에서 해당 안드로이드 가상머신을 선택하고 [Start] 버튼을 눌러봅니다.
에뮬레이터 시동 잘 하고 있다고 나오네요...
안드로이드 에뮬레이터가 드디어 나타났습니다.
그런데... 여전히 안드로이드 에뮬레이터는 정말 느리네요. 안드로이드는 역시 실기기에서 개발을...
여튼 이런 방식으로 해결되었습니다.
단순히 디폴트 상태에서 저렇게 잘 돌아가아 할텐데, 구글에서 좀더 신경을 써줬으면 하는 바램이 있네요.
참고로, config.ini 파일은 AVD 매니저에서 해당 에뮬레이터 설정을 수정할때마다 다시 지워져 버립니다. 다시 해줘야 되요. ㅡ,.ㅡ
끝.
'소프트웨어개발 > Android' 카테고리의 다른 글
맥에서 안드로이드 무선 디버깅 2 - 플러그인을 사용한 방법 (0) | 2017.10.05 |
---|---|
맥에서 안드로이드 무선 디버깅 1 - ADB를 이용한 방법 (0) | 2017.10.05 |
구글 플레이 스토어 등록 어떻게? 2편 - 키스토어 생성과 릴리즈 빌드 하기 (안드로이드 스튜디오 사용) (5) | 2015.03.16 |
구글 플레이 스토어 등록 어떻게? 1편 - 준비해야 할 것들 (6) | 2015.03.16 |
다른 PC의 안드로이드 스튜디오에서의 APK 설치 에러 (0) | 2015.02.17 |