HOME > android > tips

쉘 명령어로 안드로이드 emulator를 실행하는 방법 (우분투)

JSFollow12 Aug 2018

안드로이드의 /system 파티션은 기본적으로 read only로 설정되어있습니다. 이것을 writable로 변경하려면 emulator를 실행할 때 옵션을 writable로 설정하면됩니다. 안드로이드 스튜디오에서 AVD manager로 실행할 때는 옵션을 줄 수 없어, shell command로 실행해야 합니다.

에뮬레이터 avd 리스트

미리 안드로이드 스튜디오에서 avd manager로 적절한 안드로이드 avd를 설치합니다. 그리고 shell에서 다음 명령어를 입력하면 설치된 avd list를 볼 수 있습니다.

$ emulator -list-avds
Pixel_2_API_P
Pixel_API_P

emulator실행이 안된다면 PATH가 잘 설정되어있는지 확인이 필요합니다. Sdk 안에 emulator가 포함되어있으니 아래처럼 설정하시면 됩니다.

ANDROID_HOME='..../Android/Sdk'
PATH=$PATH:$ANDROID_HOME/emulator

에뮬레이터를 writable로 실행

아래 명령어를 입력하면 PixelAPIP가 writable로 실행됩니다. 다른 옵션들은 AOSP 메뉴얼에 소개된 기본 옵션들이고 system 파티션을 writable로 변경하는 옵션은 -writable-system입니다.

$ emulator @Pixel_API_P -netdelay none -netspeed full -writable-system

더 많은 옵션을 보시려면 명령어로 에뮬레이터 실행하기를 참고해주세요.

실행 중에 ANDROID_SDK_ROOT가 설정되지 않았다는 에러 메시지가 나오면 아래처럼 $ANDROID_HOME과 동일한 패스를 설정하시면 됩니다.

export ANDROID_SDK_ROOT=$ANDROID_HOME

실행한다고 system 파티션이 writable로 설정되지 않습니다. 아래 명령어로 remount해야 writable로 변경됩니다.

$ adb reboot
$ adb remount

참고