Android SDK에는 컴퓨터에서 실행되는 가상 기기인 Android 기기 에뮬레이터가 포함되어 있습니다. Android Emulator를 사용하면 실제 기기를 사용하지 않고 Android 앱을 개발하고 테스트할 수 있습니다.
이 페이지에서는 Android Emulator와 함께 사용할 수 있는 명령줄 기능을 설명합니다. Android Emulator UI 사용에 관한 자세한 내용은 Android Emulator에서 앱 실행을 참고하세요.
에뮬레이터 시작
프로젝트를 실행하거나 AVD Manager를 통해 시작하는 대신 emulator
명령어를 사용하여 에뮬레이터를 시작할 수 있습니다.
다음은 터미널 프롬프트에서 가상 기기를 시작하기 위한 기본 명령줄 구문입니다.
emulator -avd avd_name [ {-option [value]} … ]
또는
emulator @avd_name [ {-option [value]} … ]
예를 들어 Mac에서 실행되는 Android 스튜디오 내에서 에뮬레이터를 시작하는 경우 기본 명령줄은 다음과 유사합니다.
/Users/janedoe/Library/Android/sdk/emulator/emulator -avd Pixel8_API_34 -netdelay none -netspeed full -qt-hide-window -grpc-use-token -idle-grpc-timeout
인수 -qt-hide-window -grpc-use-token -idle-grpc-timeout
는 Android 스튜디오 내에서 에뮬레이터 창을 실행하는 데만 사용됩니다. 자체 창에서 에뮬레이터를 실행하려면 이러한 추가 매개변수를 사용해서는 안 됩니다.
에뮬레이터를 시작할 때 시작 옵션을 지정할 수 있지만 시작한 후에는 지정할 수 없습니다.
AVD 이름의 목록을 보려면 다음 명령어를 입력하세요.
emulator -list-avds
Android 홈 디렉터리의 AVD 이름 목록을 표시하려면 이 옵션을 사용하세요.
모든 구성과 AVD 콘텐츠가 저장되는 사용자별 디렉터리의 루트를 지정하는 ANDROID_SDK_HOME
환경 변수를 설정하여 기본 홈 디렉터리를 재정의할 수 있습니다.
가상 기기를 실행하기 전에 터미널 창에서 또는 운영체제의 사용자 설정을 통해 환경 변수를 설정할 수 있습니다. Linux의 .bashrc
파일에서 설정하는 것을 예로 들 수 있습니다.
Android Emulator를 중지하려면 에뮬레이터 창을 닫으면 됩니다.
앱 설치
Android 스튜디오 또는 에뮬레이터 UI를 통해 앱을 설치하는 것 외에 adb
유틸리티를 사용하여 가상 기기에 앱을 설치할 수도 있습니다.
adb
를 사용하여 앱을 설치, 실행, 테스트하려면 다음 일반 단계를 따르세요.
- 앱 빌드 및 실행에 설명된 대로 앱을 빌드하고 APK로 패키징합니다.
- 이전 섹션에 설명된 대로 필요한 시작 옵션을 사용하여 명령줄에서 에뮬레이터를 시작합니다.
adb
를 사용하여 앱을 설치합니다.- 에뮬레이터에서 앱을 실행하고 테스트합니다.
에뮬레이터가 실행되는 동안 에뮬레이터 콘솔을 사용하여 필요에 따라 명령어를 실행할 수도 있습니다.
앱을 제거하려면 Android 기기에서 하는 것처럼 제거하세요.
가상 기기가 다시 시작하는 동안 앱과 앱의 상태 데이터를 사용자 데이터 디스크 파티션(userdata-qemu.img
)에 유지합니다. 이 데이터를 지우려면 -wipe-data
옵션을 사용하여 에뮬레이터를 시작하거나 AVD Manager에서 데이터를 완전 삭제하세요. 사용자 데이터 파티션 및 기타 저장소에 관한 자세한 내용은 다음 섹션을 참고하세요.
참고: adb
유틸리티에서는 가상 기기를 실제 기기로 간주합니다. 이러한 이유로 install
과 같은 일반적인 adb
명령어에 -d
플래그를 사용해야 할 수도 있습니다. -d
플래그를 사용하면 연결된 기기 여러 개 가운데 어떤 기기를 명령어의 타겟으로 사용할지 지정할 수 있습니다. -d
를 지정하지 않으면 에뮬레이터가 목록의 첫 번째 기기를 타겟팅합니다.
기본 디렉터리 및 파일 이해
에뮬레이터에서는 연결된 파일을 사용하며 그중에서 AVD 시스템 및 데이터 디렉터리가 가장 중요합니다. 명령줄 옵션을 지정할 때 에뮬레이터 디렉터리 구조와 파일을 이해하는 것이 도움이 되지만 일반적으로 기본 디렉터리나 파일은 수정하지 않아도 됩니다.
Android Emulator는 QEMU 하이퍼바이저를 사용합니다.
AVD 시스템 디렉터리
시스템 디렉터리에는 에뮬레이터에서 운영체제를 시뮬레이션하기 위해 사용하는 Android 시스템 이미지가 포함됩니다. 이 디렉터리에는 API 수준, CPU 아키텍처, Android 변형을 포함하여 동일한 유형의 모든 AVD에서 공유하는 플랫폼별 읽기 전용 파일이 있습니다. 기본 위치는 다음과 같습니다.
- macOS 및 Linux:
~/Library/Android/sdk/system-images/android-apiLevel/variant/arch/
- Windows -
C:\Users\user\Library\Android\sdk\system-images\android-apiLevel\variant\arch\
여기서
apiLevel
은 API 수준을 나타내는 숫자 또는 미리보기 출시를 나타내는 문자입니다. 예를 들어android-V
는 Android VanillaIceCream 미리보기 출시되면 API 수준 35가 되었으며android-35
variant
는 시스템 이미지에 의해 구현된 특정 기능에 상응하는 이름입니다(예:google_apis
또는android-wear
).arch
는 타겟 CPU 아키텍처입니다(예:x86
).
AVD에 다른 시스템 디렉터리를 지정하려면 -sysdir
옵션을 사용합니다.
에뮬레이터는 시스템 디렉터리에서 다음 파일을 읽습니다.
파일 | 설명 | 다른 파일을 지정하기 위한 옵션 |
---|---|---|
kernel-qemu 또는 kernel-ranchu
|
AVD의 바이너리 커널 이미지입니다. kernel-ranchu 는
QEMU 에뮬레이터
|
-kernel
|
ramdisk.img
|
부팅 파티션 이미지입니다. 이는 시스템 이미지가 마운트되기 전 처음에 커널이 로드한 system.img 의 하위 집합입니다. 일반적으로 바이너리 및 초기화 스크립트 몇 개만 포함됩니다.
|
-ramdisk
|
system.img
|
시스템 이미지의 읽기 전용 초기 버전입니다. 구체적으로 API 수준 및 변형에 상응하는 시스템 라이브러리 및 데이터가 포함된 파티션입니다. | -system
|
userdata.img
|
데이터 파티션의 초기 버전으로, 에뮬레이션된 시스템에 data/ 로 표시되며 AVD의 쓰기 가능한 모든 데이터를 포함합니다. 새 AVD를 만들거나 ‑wipe-data 옵션을 사용할 때 에뮬레이터에서 이 파일이 사용됩니다. 자세한 내용은 다음 섹션의 userdata-qemu.img 파일 설명을 참고하세요.
|
-initdata
-init-data
|
AVD 데이터 디렉터리
콘텐츠 디렉터리라고도 하는 AVD 데이터 디렉터리는 단일 AVD 인스턴스에 관련되며 AVD의 모든 수정 가능한 데이터를 포함합니다.
기본 위치는 다음과 같고 여기서 name
은 AVD 이름입니다.
- macOS 및 Linux:
~/.android/avd/name.avd/
- Windows 10 이상 -
C:\Users\user\.android\name.avd\
다른 AVD 데이터 디렉터리를 지정하려면 -datadir
옵션을 사용합니다.
다음 표에는 이 디렉터리에 포함된 가장 중요한 파일이 나열되어 있습니다.
파일 | 설명 | 다른 파일을 지정하기 위한 옵션 |
---|---|---|
userdata-qemu.img
|
데이터 파티션의 콘텐츠로, 에뮬레이션된 시스템에
각 가상 기기 인스턴스에서 쓰기 가능한 사용자 데이터 이미지를 사용하여 사용자별 및 세션별 데이터를 저장합니다. 예를 들어 이미지를 사용하여 순 사용자의 설치된 앱 데이터, 설정, 데이터베이스 및 파일을 저장합니다. 사용자마다 다른 |
-data
|
cache.img
|
캐시 파티션 이미지로, 에뮬레이션된 시스템에 cache/ 로 표시됩니다. 처음으로 AVD를 만들거나 -wipe-data 옵션을 사용하는 경우 비어 있습니다. 임시 다운로드 파일을 저장하며 다운로드 관리자 및 경우에 따라 시스템에 의해 채워집니다. 예를 들어 브라우저에서는 에뮬레이터가 실행되는 동안 다운로드된 웹페이지와 이미지를 캐시하는 데 이 파일을 사용합니다. 가상 기기의 전원을 끄면 파일이 삭제됩니다. -cache 옵션을 사용하여 파일을 유지할 수 있습니다.
|
-cache
|
sdcard.img
|
(선택사항) 가상 기기에서 SD 카드를 시뮬레이션할 수 있는 SD 카드 파티션 이미지입니다. AVD Manager에서 또는
AVD Manager에서 AVD를 정의할 때 자동으로 관리되는 SD 카드 파일 또는
가상 기기가 실행되는 동안 에뮬레이터 UI 또는
SD 카드 파일을 로드하기 전에 SD 카드 파일에 파일을 복사하려면 이미지 파일을 루프 기기로 마운트한 후 파일을 복사하세요. 또는 에뮬레이터에서는 파일을 바이트의 풀로 취급하므로 SD 카드 형식은 중요하지 않습니다.
|
-sdcard
|
에뮬레이터에서 사용하는 디렉터리 및 파일 나열
두 가지 방법으로 파일의 위치를 확인할 수 있습니다.
- 명령줄에서 에뮬레이터를 시작할 때
-verbose
또는-debug init
옵션을 사용합니다. 출력을 살펴봅니다. - 기본 디렉터리를 나열하려면
emulator
-help-option
명령어를 사용합니다. 예:emulator -help-datadir
Use '-datadir <dir>' to specify a directory where writable image files will be searched. On this system, the default directory is: /Users/me/.android See '-help-disk-images' for more information about disk image files.
명령줄 시작 옵션
이 섹션에는 에뮬레이터를 시작할 때 명령줄에 입력할 수 있는 옵션이 나열되어 있습니다.
참고: Android Emulator는 안정성을 높이기 위해 계속 개발 중입니다. 다양한 명령줄 옵션과 관련하여 신고된 문제의 상태를 확인하고 버그를 신고하려면 Android Issue Tracker를 참고하세요.
일반적으로 사용되는 옵션
다음 표에는 일반적으로 사용되는 명령줄 시작 옵션이 나열되어 있습니다.
명령줄 옵션 | 설명 |
---|---|
Quick Boot | |
-no-snapshot-load
|
콜드 부팅을 실행하고 종료 시 에뮬레이터 상태를 저장합니다. |
-no-snapshot-save
|
가능한 경우 Quick Boot을 실행하지만 종료 시 에뮬레이터 상태를 저장하지 않습니다. |
-no-snapshot
|
Quick Boot 기능을 완전히 사용 중지하고 에뮬레이터 상태를 로드하거나 저장하지 않습니다. |
기기 하드웨어 | |
-camera-back mode -camera-front mode
|
후면 또는 전면을 향한 카메라의 에뮬레이션 모드를 설정합니다. AVD의 카메라 설정을 재정의합니다.
예를 들면 다음과 같습니다. emulator @Pixel8_API_34 -camera-back webcam0 |
-webcam-list
|
개발용 컴퓨터에서 에뮬레이션에 사용할 수 있는 웹캠을 나열합니다. 예를 들면 다음과 같습니다.emulator @Pixel8_API_34 -webcam-list List of web cameras connected to the computer: Camera 'webcam0' is connected to device 'webcam0' on channel 0 using pixel format 'UYVY' 이 예에서 첫 번째 SDK 도구 25.2.4부터는 AVD 이름이 필요합니다. |
디스크 이미지 및 메모리 | |
-memory size
|
실제 RAM 크기를 1,536~8,192MB로 지정합니다. 예를 들면 다음과 같습니다. emulator @Pixel8_API_34 -memory 2048 이 값에 따라 AVD 설정이 재정의됩니다. |
-sdcard filepath
|
SD 카드 파티션 이미지 파일의 파일 이름과 경로를 지정합니다. 예를 들면 다음과 같습니다.
emulator @Pixel8_API_34 -sdcard C:/sd/sdcard.img 파일을 찾을 수 없어도 에뮬레이터가 시작되지만 SD 카드 없이 시작됩니다. 명령어에서 No SD Card Image 경고를 반환합니다.
이 옵션을 지정하지 않으면 AVD가 다른 값을 지정하지 않는 한 데이터 디렉터리의 |
-wipe-data
|
사용자 데이터를 삭제하고 초기 데이터 파일에서 데이터를 복사합니다. 이 옵션은 가상 기기의 데이터를 지우고 처음 정의되었을 때와 동일한 상태로 되돌립니다. 설치된 앱 및 설정이 모두 삭제됩니다. 예를 들면 다음과 같습니다.
emulator @Pixel8_API_34 -wipe-data
기본적으로 사용자 데이터 파일은 |
디버그 | |
-debug tags
|
하나 이상의 태그에 관한 디버그 메시지 표시를 사용 설정하거나 사용 중지합니다.
여러 태그는 공백, 쉼표 또는 열로 구분하세요. 예를 들면 다음과 같습니다.
$ emulator @Pixel8_API_34 -debug init,metrics 태그를 사용 중지하려면 태그 앞에 대시(-)를 추가하세요. 예를 들어 다음 옵션은 네트워크 소켓 및 측정항목과 관련된 디버그 메시지를 제외한 모든 디버그 메시지를 표시합니다.
태그 및 설명 목록을 보려면
emulator -help-debug-tags
ANDROID_VERBOSE=socket,gles 다음 옵션을 사용하는 것과 같습니다.
또는
|
-debug-tag -debug-no-tag
|
특정 디버그 메시지 유형을 사용 설정합니다. 디버그 메시지 유형을 사용 중지하려면 no 형식을 사용합니다. 예:
emulator @Pixel8_API_34 -debug-all -debug-no-metrics 태그의 목록을 보려면 |
-logcat logtags
|
하나 이상의 태그에 Logcat 메시지 표시를 사용 설정하고 이를 터미널 창에 씁니다. 예를 들어 다음 명령어는 모든 구성요소의 오류 메시지를 사용 설정합니다.
emulator @Pixel8_API_34 -logcat *:e
다음 예에서는 정보 로그 수준에서 GSM 구성요소 메시지를 표시합니다.
emulator @Pixel8_API_34 -logcat '*:s GSM:i'
명령줄에서 Logcat 및 |
-show-kernel
|
터미널 창에 커널 디버그 메시지를 표시합니다. 예를 들면 다음과 같습니다.
emulator @Pixel8_API_34 -show-kernel 이 옵션의 한 가지 용도는 부팅 프로세스가 올바로 작동하는지 확인하는 것입니다. |
-verbose
|
에뮬레이터 초기화 메시지를 터미널 창에 출력합니다. 예를 들면 다음과 같습니다.
emulator @Pixel8_API_34 -verbose AVD에 정의된 가상 기기를 시작할 때 실제로 선택되는 파일과 설정을 표시합니다. 이 옵션은 |
네트워크 | |
-dns-server servers
|
지정된 DNS 서버를 사용합니다. servers 는 쉼표로 구분된 목록으로, 최대 4개의 DNS 서버 이름 또는 IP 주소를 나열합니다. 예를 들면 다음과 같습니다.
emulator @Pixel8_API_34 -dns-server 192.0.2.0,
기본적으로 에뮬레이터에서는 사용 중인 DNS 서버를 감지하려고 시도하고 Android 시스템에서 서버에 직접 연결할 수 있도록 에뮬레이션된 방화벽 네트워크에 특수한 별칭을 설정합니다. 다른 DNS 서버 목록을 지정하려면 |
-http-proxy proxy
|
지정된 HTTP/HTTPS 프록시를 통해 모든 TCP 연결을 설정합니다. 에뮬레이터가 프록시 서버를 통해 인터넷에 액세스해야 한다면 이 옵션이나 http_proxy 환경 변수를 사용하여 적절한 리디렉션을 설정할 수 있습니다. 예를 들면 다음과 같습니다.
emulator @Pixel8_API_34 -http-proxy myserver:1981
이 옵션이 제공되지 않은 경우 에뮬레이터에서 |
-netdelay delay
|
네트워크 지연 시간 에뮬레이션을 다음
예를 들면 다음과 같습니다. emulator @Pixel8_API_34 -netdelay gsm
에뮬레이터에서는 네트워크 제한과 더 긴 연결 지연 시간을 사용할 수 있습니다.
스킨 구성을 통해서나 |
-netfast
|
네트워크 제한을 사용 중지합니다. 예를 들면 다음과 같습니다.
emulator @Pixel8_API_34 -netfast
이 옵션은 |
-netspeed speed
|
네트워크 속도 에뮬레이션을 설정합니다. 다음
예를 들면 다음과 같습니다. emulator @Pixel8_API_34 -netspeed edge
에뮬레이터에서는 네트워크 제한과 더 긴 연결 지연 시간을 사용할 수 있습니다.
스킨 구성을 통해서나 |
-port port
|
콘솔 및 adb 에 사용되는 TCP 포트 번호를 설정합니다. 예를 들면 다음과 같습니다.
emulator @Pixel8_API_34 -port 5556
시스템에서 실행되는 첫 번째 가상 기기 인스턴스의 기본값은 5554입니다. 가상 기기는 일반적으로 한 쌍의 인접한 포트(콘솔 포트와
포트 할당은
|
-ports
|
Console 및 adb 에 사용되는 TCP 포트를 설정합니다. 예를 들면 다음과 같습니다.
emulator @Pixel8_API_34 -ports 5556,5559
유효한 포트 범위는 5554~5682로 동시에 64개의 가상 기기에서 사용할 수 있습니다.
가능한 경우
콘솔 및 |
-tcpdump filepath
|
네트워크 패킷을 캡처하여 파일에 저장합니다. 예를 들면 다음과 같습니다.
emulator @Pixel8_API_34 -tcpdump /path/dumpfile.cap 에뮬레이터의 가상 이더넷 LAN을 통해 전송된 모든 네트워크 패킷을 캡처하려면 이 옵션을 사용하세요. 그런 다음에 Wireshark와 같은 도구를 사용하여 트래픽을 분석할 수 있습니다. 이 옵션은 모든 이더넷 패킷을 캡처하며 TCP 연결로 제한되지 않습니다. |
시스템 | |
-accel mode
|
에뮬레이터 VM 가속을 구성합니다. 예를 들면 다음과 같습니다.
emulator @Pixel8_API_34 -accel auto 가속 에뮬레이션은 x86 및 x86_64 시스템 이미지에만 작동합니다. Linux에서는 KVM에 의존합니다. Windows 및 Mac에서는 Intel CPU 및 Intel HAXM 드라이버에 의존합니다. x86 또는 x86_64 기기를 에뮬레이션하지 않는 경우에는 이 옵션이 무시됩니다. 유효한
자세한 내용은 Android Emulator의 하드웨어 가속 구성을 참고하세요. |
-accel-check
|
에뮬레이터 VM 가속에 필요한 하이퍼바이저(HAXM 또는 KVM)가 설치되어 있는지 확인합니다. 예를 들면 다음과 같습니다.
emulator -accel-check 자세한 내용은 하이퍼바이저 설치 여부 확인을 참고하세요. |
-engine engine
|
에뮬레이터 엔진을 지정합니다.
예를 들면 다음과 같습니다.
emulator @Pixel8_API_34 -engine auto 자동 감지 기능이 특정 AVD를 에뮬레이션할 때 최고의 성능을 제공하는 값을 선택합니다. 디버깅 및 비교만이 목적인 경우 |
-gpu mode
|
GPU 에뮬레이션 모드를 선택합니다. 예를 들면 다음과 같습니다.
emulator @Pixel8_API_34 -gpu swiftshader_indirect 자세한 내용은 그래픽 가속 구성을 참고하세요. |
-no-accel
|
x86 또는 x86_64 시스템 이미지를 사용하는 경우 에뮬레이터 VM 가속을 사용 중지합니다. 디버깅에만 유용하며 -accel
off 를 지정하는 것과 동일합니다. 예를 들면 다음과 같습니다.
emulator @Pixel8_API_34 -no-accel 자세한 내용은 Android Emulator의 하드웨어 가속 구성을 참고하세요. |
-nojni
-no-jni
|
Android Dalvik 또는 ART 런타임에서 확장된 JNI(자바 네이티브 인터페이스) 검사를 사용 중지합니다. 예를 들면 다음과 같습니다.
emulator @Pixel8_API_34 -nojni 가상 기기를 시작하면 기본적으로 확장된 JNI 검사가 사용 설정됩니다. 자세한 내용은 JNI 도움말을 참고하세요. |
-selinux {disabled|permissive}
|
Linux 운영체제에서 SELinux(보안이 강화된 Linux) 보안 모듈을 disabled 또는 permissive 모드로 설정합니다. 예를 들면 다음과 같습니다.
me-linux$ emulator @Pixel8_API_34 -selinux permissive
기본적으로 SELinux는 |
-timezone timezone
|
가상 기기의 시간대를 호스트 시간대가 아닌 emulator @Pixel8_API_34 -timezone Europe/Paris
기본적으로 에뮬레이터에서는 개발용 컴퓨터의 시간대를 사용합니다. 다른 시간대를 지정하거나 자동 감지 기능이 올바로 작동하지 않으면 이 옵션을 사용하세요.
지정된 시간대는 zoneinfo 데이터베이스에 있어야 합니다. |
-version
|
에뮬레이터 버전 번호를 표시합니다. 예를 들면 다음과 같습니다.
emulator @Pixel8_API_34 -version 또는
emulator -version |
UI | |
-no-boot-anim
|
더 빠른 부팅을 위해 에뮬레이터가 시작하는 동안 부팅 애니메이션을 사용 중지합니다.
예를 들면 다음과 같습니다.
emulator @Pixel8_API_34 -no-boot-anim 느린 컴퓨터에서 이 옵션을 사용하면 부팅 시퀀스가 크게 빨라질 수 있습니다. |
-screen mode
|
에뮬레이션된 터치스크린 모드를 설정합니다. 예를 들면 다음과 같습니다.
emulator @Pixel8_API_34 -screen no-touch
|
고급 옵션
다음 표의 명령줄 시작 옵션을 사용할 수는 있지만 일반 앱 개발자가 흔히 사용하지는 않습니다.
설명에서 작업 디렉터리는 명령어를 입력하는 터미널의 현재 디렉터리입니다. AVD 시스템 디렉터리와 데이터 디렉터리 및 그 안에 저장된 파일에 관한 자세한 내용은 기본 디렉터리 및 파일 섹션을 참고하세요.
이 옵션 중 일부는 외부 웹 개발자에게 적합하며 일부는 주로 플랫폼 개발자가 사용합니다. 앱 개발자는 Android 앱을 만들어 특정 AVD에서 실행합니다. 플랫폼 개발자는 Android 시스템을 작업하며 미리 만든 AVD 없이 에뮬레이터 내에서 Android 시스템을 실행합니다.
고급 옵션 | 간략한 설명 |
---|---|
-bootchart timeout
|
제한 시간(초)을 지정하고 bootcharting을 사용 설정합니다. 일부 Android 시스템 이미지에는 bootcharting 기능을 통합하는 수정된 init 시스템이 포함되어 있습니다. 이 옵션을 사용하여 bootcharting 제한 시간을 전달할 수 있습니다. init 시스템의 bootcharting이 활성화되지 않은 경우 이 옵션을 사용해도 아무 작업도 실행되지 않습니다. 이 옵션은 기본적으로 외부 앱 개발자가 아니라 플랫폼 개발자에게 유용합니다. 예를 들면 다음과 같습니다. emulator @Pixel8_API_34 -bootchart 120 |
-cache filepath
|
캐시 파티션 이미지 파일을 지정합니다. 영구적인 캐시 파일을 설정하려면 파일 이름과 절대 경로 또는 데이터 디렉터리에 상대적인 경로를 제공하세요. 파일이 존재하지 않으면 에뮬레이터에서 빈 파일을 만듭니다. 예를 들면 다음과 같습니다. emulator @Pixel8_API_34 -cache ~/.android/avd/Pixel8_API_34.avd/cache_persistent.img 이 옵션을 사용하지 않는 경우 기본값은 |
-cache-size size
|
캐시 파티션 크기를 MB 단위로 설정합니다. 예를 들면 다음과 같습니다. emulator @Pixel8_API_34 -cache-size 1000 이 옵션을 지정하지 않으면 기본값은 66MB입니다. 일반적으로 기본 캐시보다 매우 큰 파일을 다운로드해야 하는 경우가 아니면 대부분의 앱 개발자에게 이 옵션은 필요하지 않습니다. 캐시 파일에 관한 자세한 내용은 AVD 데이터 디렉터리를 참고하세요. |
-data filepath
|
사용자 데이터 파티션 이미지 파일을 설정합니다. 영구적인 사용자 데이터 파일을 설정하려면 파일 이름과 절대 경로 또는 작업 디렉터리에 상대적인 경로를 제공하세요. 파일이 존재하지 않으면 에뮬레이터가 기본 예를 들면 다음과 같습니다. emulator @Pixel8_API_34 -data ~/.android/avd/Pixel8_API_34.avd/userdata-test.img 이 옵션을 사용하지 않는 경우 기본값은 |
-datadir dir
|
절대 경로를 사용하여 데이터 디렉터리를 지정합니다. 자세한 내용은 AVD 데이터 디렉터리를 참고하세요. 예를 들면 다음과 같습니다. emulator @Pixel8_API_34 -datadir ~/.android/avd/Pixel8_API_34.avd/mytest |
-force-32bit
|
64비트 플랫폼에서 32비트 에뮬레이터를 사용합니다. 이 옵션은 때때로 테스트 및 디버깅에 유용합니다. 예를 들어 가끔 64비트 Windows에서는 에뮬레이터가 실행되지 않지만 32비트에서는 실행되는 문제가 있었습니다. 이 옵션을 사용하면 비교를 통해 문제를 디버그할 수 있었습니다. 예를 들면 다음과 같습니다. emulator @Pixel8_API_34 -force-32bit |
-help-disk-images
|
디스크 이미지에 관한 도움말을 표시합니다. 이 옵션은 앱 개발자와 플랫폼 개발자 모두에게 관련된 정보를 제공합니다. 예를 들면 다음과 같습니다. emulator -help-disk-images |
-help-char-devices
|
문자 emulator -help-char-devices |
-help-sdk-images
|
앱 개발자와 관련된 디스크 이미지에 관한 도움말을 표시합니다. 이 옵션은 SDK 도구로 만든 AVD의 이미지 파일 위치에 관한 정보를 가져옵니다. 예를 들면 다음과 같습니다. emulator -help-sdk-images |
-help-build-images
|
플랫폼 개발자와 관련된 디스크 이미지에 관한 도움말을 표시합니다. 예를 들면 다음과 같습니다. emulator -help-build-images |
-initdata filepath -init-data
filepath
|
데이터 파티션의 초기 버전을 지정합니다. 사용자 데이터를 완전 삭제한 후 에뮬레이터에서는 기본 예를 들면 다음과 같습니다. emulator @Pixel8_API_34 -initdata ~/Library/Android/sdk/system-images/android-34/ google_apis/x86_64/userdata-test.img 경로를 지정하지 않으면 파일이 시스템 디렉터리에 배치됩니다. 자세한 내용은 AVD 시스템 디렉터리를 참고하세요. |
-kernel filepath
|
특정 에뮬레이션된 커널을 사용합니다. 경로를 지정하지 않으면 에뮬레이터가 시스템 디렉터리에서 커널을 찾습니다. 커널 디버그 메시지를 보려면‑show‑kernel 옵션을 사용합니다.
예를 들면 다음과 같습니다. emulator @Pixel8_API_34 -kernel ~/Library/Android/sdk/system-images/android-34/ google_apis/x86_64/kernel-test.img -show-kernel 이 옵션을 지정하지 않으면 기본값은 |
-noaudio
-no-audio
|
이 가상 기기의 오디오 지원 기능을 사용 중지합니다. 일부 Linux 및 Windows에는 에뮬레이터가 시작되지 못하도록 하는 것과 같이 여러 증상을 유발하는 잘못된 오디오 드라이버가 있습니다. 이 경우 이 옵션을 사용하여 문제를 해결하세요. 또는 예: emulator @Pixel8_API_34 -noaudio |
-nocache
-no-cache
|
캐시 파티션 없이 에뮬레이터를 시작합니다. 이 옵션을 사용하지 않는 경우 기본값은 예를 들면 다음과 같습니다. emulator @Pixel8_API_34 -nocache |
-no-snapshot
|
자동 로드 및 저장 작업을 금지하며 에뮬레이터에서 전체 부팅 시퀀스를 실행하고 에뮬레이터가 닫힐 때 상태가 저장되지 않도록 합니다. 예를 들면 다음과 같습니다. emulator @Pixel8_API_34 -no-snapshot |
-no-snapshot-load
|
에뮬레이터가 스냅샷 저장소에서 AVD 상태를 로드하지 못하도록 합니다. 전체 부팅을 실행합니다. 예를 들면 다음과 같습니다. emulator @Pixel8_API_34 -no-snapshot-load |
-no-snapshot-save
|
에뮬레이터가 종료 시 AVD 상태를 스냅샷 저장소에 저장하지 못하도록 합니다. 즉, 모든 변경사항이 삭제됩니다. 예를 들면 다음과 같습니다. emulator @Pixel8_API_34 -no-snapshot-save |
-no-snapshot-update-time
|
스냅샷 복원 후 즉시 AVD 클럭 시간을 수정하려고 시도하지 않습니다. 이 옵션은 급격한 시간 이동을 피하므로 테스트하는 동안 유용할 수 있습니다. 시간 업데이트는 계속해서 약 15초마다 AVD로 전송됩니다. 예를 들면 다음과 같습니다. emulator @Pixel8_API_34 -no-snapshot-update-time |
-no-snapstorage
|
상태 스냅샷을 저장하거나 로드하기 위한 파일을 마운트하지 않고 에뮬레이터를 시작하여 강제로 전체 부팅을 실행하고 상태 스냅샷 기능을 사용 중지합니다. 이 옵션은 예를 들면 다음과 같습니다. emulator @Pixel8_API_34 -no-snapstorage |
-no-window
|
에뮬레이터에서 그래픽 창 디스플레이를 사용 중지합니다. 이 옵션은 디스플레이가 없는 서버에서 에뮬레이터를 실행할 때 유용합니다. emulator @Pixel8_API_34 -no-window |
-partition-size size
|
시스템 데이터 파티션 크기를 MB 단위로 설정합니다. 예를 들면 다음과 같습니다. emulator @Pixel8_API_34 -partition-size 1024 |
-prop name=value
|
부팅 시 에뮬레이터에서 Android 시스템 속성을 설정합니다.
emulator @Pixel8_API_34 -prop qemu.name=value -prop qemu.abc=xyz |
-qemu args
|
QEMU 에뮬레이터 소프트웨어에 인수를 전달합니다. 이 옵션을 사용하는 경우 이 옵션 뒤의 모든 옵션이 QEMU 관련 옵션으로 간주되므로 이 옵션을 마지막 옵션으로 지정해야 합니다. 이 옵션은 매우 고급 옵션으로 QEMU 및 Android 에뮬레이션에 아주 익숙한 개발자만 사용해야 합니다. |
-qemu -h
|
emulator -qemu -h |
-ramdisk filepath
|
램디스크 부팅 이미지를 지정합니다. 파일 이름과 절대 경로 또는 작업 디렉터리에 상대적인 경로를 지정하세요. 예를 들면 다음과 같습니다. emulator @Pixel8_API_34 -ramdisk ~/Library/Android/sdk/system-images/android-34/ google_apis/x86_64/ramdisk-test.img 이 옵션을 사용하지 않는 경우 기본값은 시스템 디렉터리의 |
-report-console socket
|
에뮬레이션을 시작하기 전에 콘솔 포트를 원격 서드 파티에 보고합니다. 자동 테스트 스크립트에 유용합니다.
자세한 내용은 특정 옵션에 관한 도움말 섹션에 설명된 대로 |
-shell
|
현재 터미널에 루트 셸 콘솔을 만듭니다. 이 옵션은 다음과 같은 점에서
예를 들면 다음과 같습니다. emulator @Pixel8_API_34 -shell |
-snapshot name
|
자동 시작 및 저장 작업을 위한 스냅샷 저장소 파일 내 스냅샷의 이름을 지정합니다. 에뮬레이터는 전체 부팅 시퀀스를 실행하는 대신 이전 상태 스냅샷에서 실행을 재개할 수 있으며, 이렇게 하는 것이 일반적으로 훨씬 더 빠릅니다. 이 옵션을 입력하면 에뮬레이터가 스냅샷 이미지에서 지정된 이름의 스냅샷을 로드하고 종료 시 동일한 이름으로 다시 저장합니다. 이 옵션을 사용하지 않는 경우 기본값은 전체 부팅 시퀀스입니다. 지정된 스냅샷이 존재하지 않으면 에뮬레이터가 대신 전체 부팅 시퀀스를 실행하고 저장 작업을 실행합니다. 스냅샷 저장소 파일과 기본 파일을 지정하는 방법에 관한 정보는 emulator @Pixel8_API_34 -snapshot snapshot2 스냅샷을 로드하는 동안 시스템과 사용자 데이터, SD 카드 이미지의 모든 콘텐츠가 스냅샷을 만들 때 저장된 콘텐츠로 덮어쓰기 됩니다. 이 정보를 다른 스냅샷에 저장하지 않으면 그 이후의 모든 변경사항이 삭제됩니다.
|
-snapshot-list
|
사용 가능한 스냅샷 목록을 표시합니다. 이 명령어는 에뮬레이터가 시작될 때 사용된 스냅샷 저장소 파일에 저장되어 있는 스냅샷의 표를 출력한 후 종료됩니다. 예: emulator @Pixel8_API_34 -snapshot-list -snapstorage ~/.android/avd/Pixel8_API_34.avd/snapshots-test.img 출력의 ID 및 TAG 열 값을 |
-snapstorage filepath
|
모든 상태 스냅샷이 포함된 저장소 파일을 지정합니다. 실행 중에 생성된 모든 스냅샷이 이 파일에 저장됩니다. 에뮬레이터 실행 중에는 이 파일의 스냅샷만 복원할 수 있습니다. 예를 들면 다음과 같습니다. emulator @Pixel8_API_34 -snapstorage ~/.android/avd/Pixel8_API_34.avd/snapshots-test.img 이 옵션을 지정하지 않는 경우 기본값은 데이터 디렉터리의 |
-sysdir dir
|
절대 경로를 사용하여 시스템 디렉터리를 지정합니다. 자세한 내용은 AVD 시스템 디렉터리를 참고하세요. 예를 들면 다음과 같습니다. emulator @Pixel8_API_34 -sysdir ~/Library/Android/sdk/system-images/android-34/ google_apis/x86_64/test |
-system filepath
|
초기 시스템 파일을 지정합니다. 파일 이름과 절대 경로 또는 작업 디렉터리에 상대적인 경로를 제공하세요. 예를 들면 다음과 같습니다. emulator @Pixel8_API_34 -system ~/Library/Android/sdk/system-images/android-34/ google_apis/x86_64/system-test.img 이 옵션을 사용하지 않는 경우 기본값은 시스템 디렉터리의 |
-use-system-libs
|
Linux에서 에뮬레이터 시스템과 번들된 버전 대신 시스템 예: me-linux$ emulator @Pixel8_API_34 -use-system-libs |
-writable-system
|
에뮬레이션 세션에서 쓰기 가능한 시스템 이미지를 만들려면 이 옵션을 사용합니다. 방법은 다음과 같습니다.
이 플래그를 사용하면 시스템 이미지의 임시 사본이 생성되며 이 사본은 매우 클 수 있지만(최대 수백 MB) 에뮬레이터가 종료될 때 삭제됩니다. |
지원 중단된 옵션
다음 명령줄 옵션은 지원 중단되었습니다.
-audio-in
-audio-out
-charmap
-code-profile
-cpu-delay
-dpi-device
-dynamic_skin
-enable-kvm
-gps
-image
-keyset
-help-keys
-help-keyset-file
-nand-limits
-noskin
-no-skin
-onion
-onion-alpha
-onion-rotation
-radio
-ranchu
-raw-keys
-scale
-shared-net-id
-shell-serial
-skin
-skindir
-trace
-useaudio
명령줄 옵션에 관한 도움말 보기
이 섹션에서는 명령줄 옵션에 관한 도움말을 보는 방법을 설명합니다. 에뮬레이터를 시작할 때 제공되는 흔히 사용되는 에뮬레이터 명령줄 옵션에 관한 자세한 정보를 제공합니다.
모든 에뮬레이터 옵션 나열
간단한 설명을 포함한 모든 에뮬레이터 옵션 목록을 출력하려면 다음 명령어를 입력하세요.
emulator -help
특정 옵션에 관한 자세한 도움말 보기
특정 시작 옵션에 관한 도움말을 출력하려면 다음 명령어를 입력하세요.
emulator -help-option
예를 들면 다음과 같습니다.
emulator -help-netspeed
이 도움말은 -help
옵션에서 제공하는 설명보다 더 자세한 도움말입니다.
모든 옵션에 관한 자세한 도움말 보기
모든 에뮬레이터 옵션에 관한 자세한 도움말을 보려면 다음 명령어를 입력하세요.
emulator -help-all
에뮬레이터 환경 변수 나열
에뮬레이터 환경 변수 목록을 가져오려면 다음 명령어를 입력하세요.
emulator -help-environment
가상 기기를 시작하기 전에 터미널 창에서 환경 변수를 설정하거나 운영체제의 사용자 설정을 통해 환경 변수를 설정할 수 있습니다. 예를 들어 Linux의 .bashrc
파일에서 설정하세요.
디버그 태그 나열
-debug
옵션의 태그 목록을 출력하려면 다음 명령어를 입력하세요.
emulator -help-debug-tags
-debug
옵션을 사용하면 태그에 의해 지정된 대로 특정 에뮬레이터 구성요소의 디버그 메시지를 사용 설정하거나 중지할 수 있습니다.