sourcecode

안드로이드 에뮬레이터는 왜 그렇게 느립니까?안드로이드 에뮬레이터의 속도를 높이려면 어떻게 해야 합니까?

codebag 2023. 6. 7. 22:45
반응형

안드로이드 에뮬레이터는 왜 그렇게 느립니까?안드로이드 에뮬레이터의 속도를 높이려면 어떻게 해야 합니까?

x86 Windows XP Professional 컴퓨터에 2.67GHz Celeron 프로세서와 1.21GB의 RAM이 있습니다.

제가 알기로는 안드로이드 에뮬레이터는 그러한 기계에서 상당히 빨리 시작해야 하지만, 저는 그렇지 않습니다.IDE, SDK, JDK 등을 설정할 때 모든 지침을 준수했으며 에뮬레이터를 빠르게 시작하는 데 성공한 적이 있지만 매우 드문 경우입니다.가능하다면 어떻게 이 문제를 해결할 수 있습니까?

시작해서 홈 화면을 로드해도 매우 느립니다.버전 3.5(갈릴레오)와 3.4(가니메데)에서 Eclipse IDE를 사용해 보았습니다.

갱신하다

이제 Android Emulator의 빠른 부팅 옵션을 활성화할 수 있습니다.그러면 에뮬레이터 상태가 저장되고 다음 부팅 시 에뮬레이터가 빠르게 시작됩니다.

Emulator edit 버튼을 클릭한 다음 을 클릭합니다.그런 다음 사용Quick Boot아래 스크린샷처럼.

빠른 부팅

Android Development Tools(ADT) 9.0.0 이상에는 AVD(에뮬레이터)의 상태를 저장하고 에뮬레이터를 즉시 시작할 수 있는 기능이 있습니다.새 AVD를 만드는 동안 이 기능을 활성화하거나 나중에 AVD를 편집하여 만들 수 있습니다.

또한 저는 그것을 늘렸습니다.Device RAM Size1024매우 빠른 에뮬레이터를 생성합니다.

자세한 내용은 아래 스크린샷을 참조하십시오.

스냅샷 저장 기능을 사용하여 새 AVD를 만듭니다.

스냅샷 저장 기능이 있는 Android 에뮬레이터.

스냅샷에서 에뮬레이터를 시작하는 중입니다.

스냅샷에서 에뮬레이터를 시작하는 중입니다.

에뮬레이터 속도를 높이려면 Android 에뮬레이터 속도 향상을 참조하십시오.

SSD 하드 드라이브를 사용하는 것은 너무 큰 영향을 미치므로 더 적합한 RAM(8 이상)을 사용하는 것이 좋습니다.

중요 참고: 먼저 CPU가 Intel VT를 지원하는지 확인하려면 VT에 대한 Intel 목록을 참조하십시오.

느린 안드로이드 에뮬레이터를 가속화하는 HAXM

HAXM "Intel Hardware Accelerated Execution Manager"의 약자입니다.

현재는 Intel® VT(Intel Virtualization Technology)만 지원합니다.

Android 에뮬레이터는 QEMU를 기반으로 합니다.호스트 시스템의 QEMU와 HAXM 드라이버 간 인터페이스는 벤더에 구애받지 않도록 설계되었습니다.

HAXM

HAXM을 위한 Android 개발 환경 구성 단계

  1. 이클립스 업데이트:Eclipse 설치 및 ADT 플러그인이 완전히 최신 상태인지 확인합니다.

  2. Android 도구 업데이트: Eclipse 플러그인을 업데이트할 때마다 Android SDK 도구를 업데이트하는 것이 중요합니다.이렇게 하려면 Android SDK Manager를 시작하고 모든 Android SDK 구성 요소를 업데이트합니다.HAXM을 활용하려면 릴리스 버전 17 이상이어야 합니다.

여기에 이미지 설명 입력

  • x86 Atom 시스템 이미지 및 Intel Hardware Accelerated Execution Manager 드라이버를 다운로드합니다.아래 이미지를 따릅니다.

여기에 이미지 설명 입력

  • IntelHaxm.exe를 실행하여 HAXM 드라이버를 설치합니다.다음 위치 중 하나에 위치합니다.

    • C:\Program Files\Android\android-sdk\extras\intel\Hardware_Accelerated_Execution_Manager

    • C:\Users\<user>\adt-bundle-windows-x86_64\sdk\extras\intel\Hardware_Accelerated_Execution_Manager

    설치 관리자가 실패하고 Intel VT를 켜야 한다는 메시지가 표시되면 BIOS에서 이를 실행해야 합니다.Intel VT(Virtualization Technology) 사용 방법에 대한 설명은 Intel VT(Intel VT(Virtualization Technology)

.exe 또는 .dmg 설치

  • x86 AVD 만들기: 아래 이미지를 따릅니다.

AVD 만들기

  • SDK에 는, SDK의 예를 들면,여기에 이미지 설명 입력

Android x86을 사용해 보십시오.구글 안드로이드 에뮬레이터보다 훨씬 빠릅니다.다음 단계를 수행합니다.

  1. VirtualBox를 설치합니다.
  2. 필요한 ISO 파일을 다운로드합니다.
  3. Linux 2.6/기타 Linux, 512MB RAM, HD 2GB로 가상 시스템을 생성합니다.네트워크: NAT에 연결된 PCnet-Fast III.브리지 어댑터를 사용할 수도 있지만 환경에 DHCP 서버가 필요합니다.
  4. 에뮬레이터에 Android x86을 설치하고 실행합니다.
  5. +F1를 누르고 입력합니다.netcfgIP 주소를 기억하고 +F7를 누릅니다.
  6. 한 후 XP "cmd"를 입력합니다.adb connect <virtual_machine_IP>.
  7. 이클립스를 시작하고, ADT 플러그인을 열고, 장치를 찾고, 즐기세요!

업데이트: 최신 버전의 Android 스튜디오(2.x)는 번들 에뮬레이터를 크게 개선했습니다.그것은 반응성이 좋고 많은 특징들을 가지고 있습니다.

여전히 관심이 있는 분들을 위해:지니모션을 사용해보세요.등록 후 Windows/Mac OS X/Linux 버전을 다운로드할 수 있습니다.Eclipse용 플러그인도 사용할 수 있습니다.

플러그인 설치는 Eclipse를 시작하고 "도움말 / 새 소프트웨어 설치" 메뉴로 이동한 후 다음 URL을 사용하여 새 업데이트 사이트를 추가하면 됩니다. http://plugins.genymotion.com/eclipse .Eclipse에 표시된 단계를 따릅니다.

이 에뮬레이터는 빠르고 반응이 빠릅니다.

GenyMotion을 사용하면 배터리 수준, 신호 강도 및 GPS를 포함한 장치의 다양한 센서를 제어할 수 있습니다.최신 버전에는 카메라 도구도 포함되어 있습니다.

(이전 버전의) Eclipse에 포함된 에뮬레이터는 매우 느립니다.

최근의 에뮬레이터는 2010년보다 더 빠릅니다.SDK/IDE를 업데이트합니다.

개인적으로, 저는 테스트를 하기 위해 진짜 전화를 사용합니다.그것은 더 빠르고 테스트는 더 현실적입니다.하지만 다양한 안드로이드 버전에서 애플리케이션을 테스트하고 여러 대의 전화기를 구입하고 싶지 않다면 에뮬레이터를 사용해야 합니다.

에뮬레이터 시작 속도가 매우 느립니다.좋은 점은 에뮬레이터를 한 번만 시작하면 된다는 것입니다.에뮬레이터가 이미 실행 중이고 앱을 다시 실행하는 경우 에뮬레이터는 비교적 빠르게 앱을 다시 설치합니다.물론, 전화기에서 얼마나 빨리 실행되는지 알고 싶다면, 실제 전화기에서 테스트하는 것이 가장 좋습니다.

Intel은 2012년 5월 15일 ICS 에뮬레이터에 대한 권장 설치 지침을 릴리스했습니다.이것은 저에게 효과가 있었습니다.이제 에뮬레이터가 빨라지고 UI가 매끄럽습니다.

지침의 전반부는 충분히 상세하므로 Intel HAXM뿐만 아니라 Android SDK 관리자를 사용하여 Intel x86 Atom 시스템 이미지를 설치할 수 있었다고 가정합니다.

이제 고성능 에뮬레이터를 사용할 수 있도록 다른 모든 것이 설정되었는지 확인합니다.

시작합니다.

sudo kextload -b com.intel.kext.intelhaxm (mac)

HAXM이 제대로 작동하는 경우 에뮬레이터를 시작할 때 다음 메시지가 표시될 수 있습니다.

HAX가 작동 중이고 에뮬레이터가 빠른 가상 모드로 실행됨

그렇지 않으면 다음 오류가 나타날 수 있습니다.

HAX가 작동하지 않고 에뮬레이터가 에뮬레이터 모드 에뮬레이터에서 실행됩니다.
.

  • GPU 에뮬레이션을 사용합니다.이 문서에서 GPU 에뮬레이션을 사용하는 경우 스냅샷 옵션을 사용할 수 없습니다.GPU 에뮬레이션이 "예"로 설정되어 있는지 확인합니다.

  • 디바이스 메모리를 1024MB 이상으로 설정하되 Intel HAXM 설정을 초과해서는 안 됩니다.장치당 1024MB를 사용하고 HAXM에는 2048을 사용합니다.

저장 후 항상 설정을 두 번 확인하세요!에뮬레이터는 사용자가 설정할 수 있는 것에 대해 매우 까다로우며 사용자에게 알리지 않고 구성을 되돌립니다.

이러한 설정을 사용하면 소프트웨어 키보드가 더 이상 나타나지 않으며 화면 뒤로, 메뉴 및 최근 키도 나타나지 않습니다.이는 현재 ICS Intel x86 시스템 이미지의 제한 사항으로 나타납니다.바로 가기 키를 사용해야 합니다.

Mac OS에서는 + 키를 눌러야 - 키가 작동합니다.컨트롤 + 화살표 키를 사용하여 페이지 위/아래/왼쪽/오른쪽을 수행할 수 있습니다.

다음 명령을 사용하여 에뮬레이터.bat을 생성하여 에뮬레이터를 시작할 수 있습니다.그것은 더 빨리 시작할 것입니다.

emulator.exe -cpu-delay 0 -no-boot-anim @<avd name>

또는 Unix(Mac 또는 Linux 버전):

emulator -cpu-delay 0 -no-boot-anim @<avd name>

DDMS(Dalvik Debug Monitor Server)가 연결되어 있지 않으면 에뮬레이터가 훨씬 빨리 시작됩니다.따라서 Virtual Device Manager "SDK Setup.exe"에서 에뮬레이터를 시작하고 Eclipse를 시작하지 않으면 에뮬레이터가 더 빨리 작동합니다.

이클립스에서 에뮬레이터를 시작하면 DDMS가 있기 때문에 에뮬레이터가 매우 느릴 때도 있지만 더 빠를 때도 있습니다.

에뮬레이터는 느립니다.여러분이 할 수 있는 일은 정말 없습니다. 하지만 에뮬레이터에 대한 대안이 있습니다.

  1. 지니모션 - 선호도

  2. 버추얼 박스

  3. 블루스택

  4. 유웨이브

  5. Windows Android 에뮬레이터

  6. 콩 항아리

  7. 앤디

에뮬레이터를 더 빠르게 만들기 위해 GPU를 호스팅하고 더 가벼운 Android 버전(Android 2.3(진저브레드))을 사용할 수 있습니다.Mac에서 개발하는 것이 더 나을 것입니다.왜 에뮬레이터를 사용합니까, BTW?진짜 전화를 사용하는 것이 더 말이 됩니다.

Android SDK Tools의 Revision 17 이후 에뮬레이터는 그래픽 가속 및 CPU에서 제공하는 확장 기능을 사용하여 효율성을 높일 수 있습니다.필수 구성 요소 및 전체 구성 및 사용자 참고 사항은 다음과 같습니다.

http://developer.android.com/guide/developing/devices/emulator.html#acceleration

GPU 가속을 사용하려면 명령줄에서 에뮬레이터를 실행하거나 AVD 구성의 추가 에뮬레이터 명령줄 옵션에 "-gpuon"을 추가합니다.

emulator -avd <avd_name> -gpu on

CPU 시스템 확장을 사용하는 경우 드라이버를 설치해야 합니다(기존 VirtualBox 또는 VMware 드라이버와 충돌할 수 있으므로 주의).일단 설치되면 x86 기반 AVD를 사용할 때마다 자동으로 사용됩니다.

바이러스 백신을 사용하지 않도록 설정합니다.아마도 에뮬레이터를 조금 더 빠르게 만들 것입니다.

Android SDK rev.17은 AMD 및 Intel 가상화 기술을 사용한 Virtual Machine Acceleration을 지원합니다.

이 기능은 에뮬레이터 성능을 크게 향상시킬 수 있습니다!

자세한 내용은 Android 에뮬레이터 설명서의 다음 섹션을 참조하십시오.가상 시스템 가속 구성

운영 체제에 적합한 드라이버를 설치하는 것을 잊지 마십시오.

드라이버를 설치하고 설명서에 설명된 대로 Android X86 시스템 이미지를 다운로드한 후에는 x86 이미지를 사용하여 새 AVD를 만들 수 있습니다.

예:

  • 대상: Intel Atom x86 시스템 이미지 - API 레벨 10
  • CPU/ABI:Intel Atom(x86)

»-cpu-delay <delay>에뮬레이터 시작 옵션에 설명되어 있습니다.

에뮬레이터가 유휴 상태일 때 속도가 느려지는 것 같습니다.이는 측면의 키 위에 빠르게 마우스를 올려놓고 조명 반응을 관찰함으로써 분명해집니다.해결책으로, 저는 통과합니다.-icount auto에뮬레이터를 시작할 때 QEMU로 이동합니다.다음과 같은 배치 파일을 만들 수 있습니다.my_avd.bat당신을 위해 그것을 하기 위해:

에뮬레이터 @my_avd -no-boot-anim -qemu -icount auto
  • @my_avdmy_avd'라는 이름의 합니다.
  • -no-boot-anim 부팅을 사용 안 함 ㅠㅠㅠㅠㅠㅠㅠㅜㅜㅜㅜㅜㅜㅜㅜㅜ
  • -qemu args... 에전달에
  • -icount [N|auto] 2 가능 2^N 의 클 눈 으 명 령운카터사용상가로당금

를 높였습니다.adb install열 배의

Android 에뮬레이터 릴리스 9에는 새로운 "스냅샷" 기능이 있습니다.에뮬레이터를 시작할 때 에뮬레이터의 상태를 저장하고(에뮬레이터의 이미지 만들기) 부팅을 피할 수 있습니다.

에뮬레이터 문제는 Google I/O 2011: Android Development Tools 토크에서 0:40:20부터 검토할 수 있습니다.

전체 Android 환경이 에뮬레이트된 하드웨어에서 실행되고 명령어가 에뮬레이트된 ARM 프로세서에서도 실행되므로 에뮬레이터가 느리게 실행됩니다.

어떤 전용 하드웨어에서도 실행되지 않지만 실제로 소프트웨어 렌더링을 통해 수행되기 때문에 주요 문제는 렌더링입니다.화면 크기를 낮추면 에뮬레이터 성능이 크게 향상됩니다.더 많은/더 빠른 메모리를 얻는 것은 도움이 되지 않습니다.

그 당시에는 에뮬레이터가 호스트 하드웨어를 통해 특정 명령을 파이프로 전달할 수 있는 인터페이스를 개발하고 있다고 언급했습니다. 따라서 최종적으로 데스크톱 하드웨어의 물리적 성능으로 에뮬레이터 성능을 활용할 수 있습니다.

에뮬레이터의 현재(2011년 5월) 버전은 특히 Android 3.0(Honeycomb)에서 느립니다. 주로 에뮬레이터가 하드웨어 GL을 지원하지 않기 때문입니다. 즉, GL 코드가 소프트웨어(사실은 ARM 소프트웨어)로 변환된 다음 QEMU의 소프트웨어에서 에뮬레이터가 됩니다.이건 미친 듯이 느려요.그들은 이 문제를 연구하고 있고 부분적으로 해결하고 있지만 출시 품질은 그렇지 않습니다.

Google I/O 2011: Android Development Tools(안드로이드 개발 도구) 비디오를 확인해 보십시오. 약 44분으로 이동합니다.

Intel x86 Emulator Accelerator 사용

먼저 Intel x86 Emulator Accelerator(HAXM)를 설치합니다.Intel에서 직접 다운로드하거나 Android SDK Manager를 사용하여 다운로드할 수 있습니다.SDK 관리자의 추가 정보 아래에 있습니다.

SDK Manager 스크린샷

제가 사용한 Android Studio 버전(0.8.9)에서 Android SDK Manager는 HAXM을 다운로드하지만 실제로 설치 프로그램을 실행하지는 않습니다(나중 버전에서는 수정될 것으로 예상됨).설치 프로그램을 실행하려면 C:\Program Files(x86)\로 이동해야 했습니다.Android\안드로이드-스튜디오\sdk\extra\intel\하드웨어_액셀러레이션_Execution_Manager 및 수동으로 intelhaxm.exe를 실행합니다.

HAXM은 Intel 장치와 함께 작동하므로 Intel CPU가 포함된 새 에뮬레이터를 만들었습니다.

Intel Atom x86을 사용하여 새 AVD 생성

이것은 상황을 상당히 개선시켰지만 에뮬레이터는 여전히 약간 부진했습니다.마지막 단계는 Android Virtual Device Manager(AVD)에서 호스트 GPU 사용을 선택하는 것이었습니다.

AVD 생성 옵션 스크린샷

이러한 변화 이후, 안드로이드 에뮬레이터는 5-10초 만에 시작되었고 눈에 띄는 지연 없이 실행되었습니다.이러한 기능은 하드웨어에 따라 다르며(CPU/GPU) 일부 시스템에서는 작동하지 않을 수 있습니다.

Android Studio용 Genymotion을 사용해 보십시오.맹렬한 속도로!한 번만 설치하면 됩니다.더 이상 AVD 통증은 없습니다.

여기에 추가 정보를 추가합니다.

최근 Ubuntu 설치를 Ubuntu 10.04 LTS(Lucid Lynx)로 업그레이드하여 Java 버전을 다음과 같이 업데이트했습니다.

Java version "1.6.0_20"
Java(TM) SE Runtime Environment (build 1.6.0_20-b02)
Java HotSpot(TM) 64-Bit Server VM (build 16.3-b01, mixed mode)

이제 에뮬레이터가 이전보다 더 빠르게 실행되는 것 같습니다(시작하는 데 시간이 좀 걸리지만).

사람들이 JVM을 업그레이드할 가치가 있을 수 있습니다.

새로운 옵션은 Android용 Visual Studio Emulator입니다. 빠른 Hyper-V, x86이며 VS 없이도 무료로 다운로드할 수 있습니다.

아무도 그것에 대해 언급하지 않은 것을 알아챘습니다.

사용 가능한 모든 프로세서를 에뮬레이터에 할당

여기 시도해 볼 수 있는 것이 있습니다.특히 로딩 시간 동안 에뮬레이터의 속도가 빨라집니다.에뮬레이터가 사용 가능한 CPU의 단일 코어만 사용하고 있다는 것을 알게 되었습니다.사용 가능한 모든 프로세서를 사용하도록 설정했습니다.

Windows 7(윈도우 7)을 사용합니다.

Android 에뮬레이터가 시작되면 작업 관리자를 열고 프로세스 탭 아래에서 "에뮬레이터-arm.exe" 또는 "에뮬레이터-arm.exe *32"를 찾습니다.마우스 오른쪽 버튼을 클릭하고 프로세서 선호도를 선택한 다음 에뮬레이터에 원하는 만큼 프로세서를 할당합니다.

여기에 이미지 설명 입력

한동안 개발한 후, 제 에뮬레이터는 잔인할 정도로 느려졌습니다.저는 사용자 데이터 삭제를 선택했고, 훨씬 더 좋았습니다.당신이 배치한 APK 파일을 각각 로드하는 데 시간이 걸릴 것으로 예상됩니다.

누군가 Android x86을 대체 테스트 에뮬레이터로 제안했기 때문에 제가 좋아하는 것도 소개하겠습니다.이것이 모두를 위한 대안은 아닐지 모르지만, 저에게는 완벽합니다!

블루스택 플레이어를 사용합니다.Android 2.3.4를 실행하며 매우 유동적이고 빠릅니다.때때로 그것은 심지어 일반적인 장치보다 빠릅니다.유일한 단점은 API Level 10에서 하나의 화면 크기로 앱을 테스트할 수 있지만 작동하는지 테스트하는 데만 적합하다는 것입니다.플레이어를 연결하기만 하면 됩니다.adb

adb connect 127.0.0.1 

컴파일 후 즉시 설치됩니다.컴퓨터 하드웨어(4GB의 RAM이 있는 듀얼 코어)가 평균적인 것을 고려하면 매우 인상적입니다.

이클립스(3.6.1)가 로드된 Xubuntu 10.04 VirtualBox 3.2.12 게스트에서 실행되는 Intel Core i7 920 2.67 GHz CPU에서 최대 3분의 간헐적 느린 에뮬레이터(SDK v8.0) 로드 시간이 있었습니다.VirtualBox 게스트 메모리를 1024MB에서 2048MB로 변경한 후 다시는 속도 저하(로드 시간 33초, CPU 로드 20%)를 경험하지 못했습니다.이클립스와 에뮬레이터는 모두 메모리 호그입니다.

Android 에뮬레이터는 매우 느립니다.실행 중에는 800MB의 메모리가 필요합니다.Windows(윈도우)에 있는 경우 Microsoft Android Emulator를 사용할 수 있습니다.이것은 최고이며 Android Studio Emulator보다 더 많은 기능을 제공합니다.가장 중요한 것은 속도가 빠르다는 것입니다(13MB만 사용).Visual Studio 2015 Technical Preview와 함께 제공됩니다.저는 그것을 사용하고 있고 그것에 만족합니다.VS 팩 전체를 다운로드하여 설치했는데 VS 에뮬레이터만 설치하는 방법을 알아봐야 합니다.

Android용 Visual Studio Emulator

편집: https://www.visualstudio.com/vs/msft-android-emulator/ 을 사용해 보십시오.

에뮬레이터(이클립스 플러그인)가 Nvidia 그래픽 카드 안티에일리어싱 설정으로 인해 속도가 크게 느려지는 것을 발견했습니다.그래픽 메뉴에서 2배 안티앨리어싱을 제거하고 애플리케이션 제어로 변경하여 응답성을 높였습니다.그것은 여전히 느리지만, 예전보다 더 나아졌습니다.

에뮬레이터 시작 시간을 줄이려면 에뮬레이터를 시작하기 전에 "부팅 애니메이션 사용 안 함"을 선택해야 합니다.Android 설명서를 참조하십시오.

모르는 경우 앱을 실행/디버깅할 때마다 에뮬레이터를 닫을 필요가 없습니다.이미 열려 있을 때 실행/디버깅을 클릭하면 APK 파일이 에뮬레이터에 업로드되고 거의 즉시 시작됩니다.에뮬레이터는 처음 시작할 때만 짜증나게 오랜 시간이 걸립니다.

다음은 Android 에뮬레이터의 속도를 높이기 위한 몇 가지 팁입니다.Android Emulator를 최대 400%까지 가속화하는 방법

Android Emulator 및 앱 테스트 속도를 높이는 좋은 방법은 Android Studio를 Android Studio 2.0 버전으로 설치 또는 업그레이드한 다음 앱 열기 설정/기본 설정으로 이동하고 빌드, 실행, 배포 → 즉시 실행으로 이동하는 것입니다.즉시 실행 사용을 클릭합니다.그 후에는 프로젝트가 인스턴트 실행과 함께 작동하는 데 적합한 Gradle 플러그인을 확보할 수 있습니다.여기에 이미지 설명 입력

그리고 인스턴트 런은 다음과 같습니다.

그러나 Android Studio는 현재 미리 보기에 있습니다. 지금 바로 사용해 볼 수 있습니다.

언급URL : https://stackoverflow.com/questions/1554099/why-is-the-android-emulator-so-slow-how-can-we-speed-up-the-android-emulator

반응형