가수면
안드로이드 스튜디오 Virtual Device 실행 오류 해결 방법 본문
React Native를 위한 안드로이드 스튜디오 설치 및 세팅
https://reactnative.dev/docs/environment-setup
https://developer.android.com/studio/run/emulator-acceleration
Virtual Device 실행 과정에서 발생할 수 있는 에러들
Unable to launch Medium Phone API 34 - The emulator process for AVD Medium_Phone_API_34
has terminated.
주로 위와 같은 경고창 하나 뜨는 게 다인데, 가상 기기 실행 과정에서 발생한 상세 오류를 확인하고 싶은 경우 아래 방법을 사용할 수 있다.
1. PowerShell에서 C:\Users\사용자명\AppData\Local\Android\Sdk\emulator 경로로 이동
2. 아래 명령어를 입력
.\emulator -avd 실행시킬_가상_기기_이름 -verbose
1. VM acceleration 설정 문제
VERBOSE | CPU Acceleration status: Please disable Hyper-V before using the Android Emulator. Start a command prompt as Administrator, run 'bcdedit /set hypervisorlaunchtype off', reboot.WHPX (10.0.19045) is installed and usable
만약 가상 기기 실행 시 위처럼 Hyper-V를 비활성하라는 오류가 발생한다면 아래 내용을 확인하자.
윈도우에서 가상 기기 실행을 위한 VM acceleration 설정 방법에는 세 가지 방법이 있다.
- Android Emulator hypervisor driver (AEHD) 사용
- Windows Hypervisor Platform (WHPX) 사용
- Intel Hardware Accelerated Execution Manager (하드웨어 가속 실행 관리자) 사용 (지원 중단됐으므로 구버전 아닌 이상 권장하지 않음)
가상화 기능이 탑재된 인텔, AMD면서 64비트 Windows 11, Windows 10, Windows 8, Windows 7 유저인 경우는 SDK Tools에서 받을 수 있는 Android Emulator hypervisor driver를 이용하면 된다.
그리고 Windows 11, Windows 10, Windows 8에서는 Windows 기능 켜기/끄기 설정에서 Hyper-V를 꺼야 한다.
아래는 Android Emulator hypervisor driver를 이용하기 위한 설정 방법이다.
1. Android Emulator hypervisor driver가 실행 중인지 확인
// AEHD 2.1 이상
sc query aehd
// AEHD 2.0 이하
sc query gvm
// 실행 중일 때
SERVICE_NAME: aehd
...
STATE : 4 RUNNING
...
// 실행되고 있지 않을 때
SERVICE_NAME: aehd
...
STATE : 1 STOPPED
WIN32_EXIT_CODE : 4294967201 (0xffffffa1)
2. Hyper-V 비활성화
2. Vulkan API 문제
ERROR: vkGetPhysicalDeviceProperties: Invalid physicalDevice
안드로이드 스튜디오는 가상 기기를 실행할 때 vulkan을 사용하는데 그래픽 드라이버에 vulkan이 설치되어있지 않다면 위와 같은 오류가 발생한다.
이 경우 아래 과정을 따른다.
1. Vulkan 설치 확인
GPU-Z 설치 후 실행으로 확인
2-1(택 1). Vulkan SDK 설치
2-2(택 1). Vulkan 사용하지 않고 구동하도록 설정
2-2.
/.android/avd/[AVD_NAME].avd 경로의 config.ini 파일을 아래처럼 수정하거나
hw.gpu.enabled=yes
hw.gpu.mode=swiftshader_indirect
에뮬레이터 실행 시 아래 명령어로 실행시키면 된다.
./emulator -avd 실행시킬_가상_기기_이름 -gpu swiftshader_indirect
'React Native' 카테고리의 다른 글
안드로이드 스튜디오에서 RN 실행 문제 (0) | 2024.05.08 |
---|---|
React Native에서 Context API 사용 시 주의사항 (0) | 2023.03.13 |
리액트와 다른 점 (0) | 2023.03.08 |
기본 규칙 (0) | 2023.03.07 |
Expo (0) | 2023.03.06 |