ข้อความแสดงข้อผิดพลาด Android Emulator:“ PANIC: โปรแกรมเอ็นจิ้น emulator ที่ขาดหายไปสำหรับ 'x86' CPUS”


232

ฉันพยายามเรียกใช้ Android Emulator โดยใช้ AVD Manager นี่คือ avd ของฉัน: http://image-upload.de/image/fnx79V/52b0d050ee.png

และนี่คือสิ่งที่เกิดขึ้นโดยเริ่มต้น:

http://image-upload.de/image/vGpQfa/e912d83939.png

ฉันมี Macbook Pro Retina ติดตั้งไดรเวอร์ Haxm โดยตรงจากหน้า intel

ไม่มีโปรแกรมจำลองการทำงาน ทั้งหมดได้รับข้อความ "ข้อผิดพลาด" ที่เหมือนกัน

กำลังเรียกใช้คำสั่ง (ข้อผิดพลาดนี้เกิดขึ้นเมื่อฉันใช้ Homebrew สำหรับการติดตั้ง Android-sdk และ Android-platform-tools | ทุกคนที่ได้รับปัญหาเดียวกันควรลบสิ่งนี้หรือดูว่ามีความขัดแย้งอยู่ที่ไหน)

export ANDROID_EMULATOR_DEBUG=1 test20

emulator:Found AVD name 'test20'
emulator:Found AVD target architecture: x86
emulator:Looking for emulator-x86 to emulate 'x86' CPU
emulator:Probing program: ./emulator-x86
emulator:Probing path for: emulator-x86
emulator:Found target-specific emulator binary: /usr/local/bin/emulator-x86
emulator:Probing for: /usr/local/bin/libOpenglRender.dylib
emulator:Probing for: /usr/local/bin/lib/libOpenglRender.dylib
emulator:Probing for: /usr/local/lib/libOpenglRender.dylib
emulator:Probing for: /usr/local/bin/lib64OpenglRender.dylib
emulator:Probing for: /usr/local/bin/lib/lib64OpenglRender.dylib
emulator:Probing for: /usr/local/lib/lib64OpenglRender.dylib
emulator:Could not find OpenGLES emulation host libraries!
emulator: ERROR: This AVD's configuration is missing a kernel file!!

emulator -avd test21
emulator:Found AVD name 'test21'
emulator:Found AVD target architecture: x86_64
emulator:Looking for emulator backend for x86_64 CPU
emulator:Probing program: ./emulator-x86_64
emulator:Probing path for: emulator-x86_64
emulator:Looking for emulator-x86 to emulate 'x86_64' CPU
emulator:Probing program: ./emulator-x86
emulator:Probing path for: emulator-x86
PANIC: Missing emulator engine program for 'x86_64' CPUS.

หลังจากฉันแก้ไขปัญหาด้วย Homebrew:

ฉันลองไปรอบ ๆ และพบสิ่งนี้:

emulator64-x86 -avd test20
Creating filesystem with parameters:
    Size: 69206016
    Block size: 4096
    Blocks per group: 32768
    Inodes per group: 4224
    Inode size: 256
    Journal blocks: 1024
    Label: 
    Blocks: 16896
    Block groups: 1
    Reserved block group size: 7
Created filesystem with 11/4224 inodes and 1302/16896 blocks
emulator: ERROR: Could not load OpenGLES emulation library: dlopen(lib64OpenglRender.dylib, 1): image not found
emulator: WARNING: Could not initialize OpenglES emulation, using software renderer.
HAX is working and emulator runs in fast virt mode
qemu: could not load PC BIOS 'bios.bin'

สำหรับทุกคนที่มีปัญหาเดียวกันขั้นตอนเหล่านี้อาจช่วยได้:

รัน Emulator ของคุณในโหมด Debug:

export ANDROID_EMULATOR_DEBUG=1 emulatorName

หากมีเส้นทางที่ดูแปลกตรวจสอบการติดตั้งอื่น ๆ เช่น Homebrew และลบข้อขัดแย้ง (ถอนการติดตั้งหนึ่ง)

เมื่อไลบรารีหายไปคุณต้องส่งออกตัวแปร:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ANDROID_HOME/tools/lib

และเมื่อเกิดข้อผิดพลาด "qemu: ไม่สามารถโหลดพีซี BIOS 'bios.bin'" ปรากฏขึ้นหนึ่งการแก้ไขคือการเรียกใช้โปรแกรมจำลองที่มีเส้นทางเต็ม:

/Applications/Android\ Studio.app/sdk/tools/emulator64-x86 -avd test20
In your case it is maybe a other path.

3
ในกรณีของฉันข้อผิดพลาดนี้เกิดขึ้นเนื่องจากตัวจัดการ SDK ไม่ได้ติดตั้งไบนารี 32 บิต (emulator-arm และ emulator-x86) แต่โปรแกรมจำลองยังคงค้นหาตามค่าเริ่มต้น การลบและติดตั้งเครื่องมือ sdk ใหม่ไม่ได้เพิ่ม 32 ไบนารีให้ฉัน ฉันสามารถเรียกใช้โปรแกรมจำลองโดยเรียกใช้ emulator64-arm -avd 'avdname' จาก Terminal แต่ฉันยังไม่สามารถรับผู้จัดการ AVD ของ Android Studio ได้เพื่อตระหนักว่าจำเป็นต้องมองหาไบนารี 64 บิต ผู้จัดการ AVD ของ Eclipse ดูเหมือนจะใช้ได้
CCJ

การแก้ไข PATH ไม่ทำงานสำหรับฉันไม่ว่าฉันจะอยู่ในemulatorหรือtools- ฉันต้องระบุ-kernelอาร์กิวเมนต์ด้วยตนเองสำหรับโพสต์นี้stackoverflow.com/a/52161215/3700490
Casey L

คำตอบ:


363

หากคุณใช้ macOS ให้เพิ่มทั้ง Android SDK emulatorและtoolsไดเรกทอรีลงในพา ธ :

ขั้นตอนที่ 1:ในกรณีของการสั่งซื้อที่มีความสำคัญเป็นครั้งแรกแล้วemulatortools

export ANDROID_SDK=$HOME/Library/Android/sdk
export PATH=$ANDROID_SDK/emulator:$ANDROID_SDK/tools:$PATH

ขั้นตอนที่ 2:โหลดซ้ำคุณ.bash_profileหรือ.bashrcขึ้นอยู่กับระบบปฏิบัติการ

ขั้นตอนที่ 3: รับรายการตัวเลียนแบบที่มี: $emulator -list-avds

ขั้นตอนที่ 4:เรียกใช้งานอีมูเลเตอร์จากบรรทัดคำสั่งและแทนที่avdด้วยชื่ออีมูเลเตอร์ของคุณ$emulator @avd

อย่าลืมที่จะเพิ่ม @สัญลักษณ์

สิ่งนี้ทดสอบกับ macOS High Sierra 10.13.4 และ Android Studio 3.1.2


14
นี่เป็นคำตอบที่ถูกต้องเนื่องจาก $ ANDROID_SDK / tools / emulator ต้องการการเข้าถึงประเภทของสถาปัตยกรรมจำลองที่พบในโฟลเดอร์ $ ANDROID_SDK / emulator /
Robert Brisita

9
ผมเขียนเกี่ยวกับการเปลี่ยนแปลงนี้ที่นี่หากคุณสนใจในบางบริบท :)
stkent

2
คำตอบเดียวกันนี้ใช้กับ Ubuntu 18.04 Bionic Beaver
Basel Shishani

ดี สิ่งนี้ยังแก้ไขข้อผิดพลาด: "ตัวเลียนแบบของคุณล้าสมัยโปรดอัปเดตโดยเปิดตัว Android Studio"
Michael Bushe

ถ้าคุณใช้ Windows ล่ะ
niico

89

ฉันมีปัญหานี้หลังจากอัปเกรด Android Studio เป็น 3.2 และแม้กระทั่งอัปเกรดแพ็กเกจ SDK บางส่วน

สาเหตุก็คือว่าเส้นทางไปยังโปรแกรมจำลองการทำงานมีการเปลี่ยนแปลงจึงไม่ใช้แต่แทนที่จะ...../Android/Sdk/tools/emulator....../Android/Sdk/emulator/emulator


2
ฉันใช้ Android Studio 3.4.2 และโซลูชันนี้ก็ใช้ได้สำหรับฉันเช่นกัน
Hamit Enes

มันใช้งานได้สำหรับฉัน คุณรู้ฉันจะเปลี่ยนทางลัดจำลองหลัก (softlink) ให้ถูกต้องได้อย่างไร
Mohammad Reza Esmaeilzadeh

58

การทำงานต่อไปนี้เพื่อเริ่มต้นโปรแกรมจำลอง -86 ทำงานได้สำหรับฉัน:

cd $SDK/tools; 
ln -s emulator64-x86 emulator-x86

หรือบนพรอมต์คำสั่งเปิด Windows (ผู้ดูแลระบบ)

cd %ANDROID_SDK_ROOT%\tools
mklink emulator64-x86.exe emulator-x86.exe

และตอนนี้ตัวจำลองจะเริ่มจากตัวจัดการ SDK

บันทึก : Emulators อยู่ในemulatorsโฟลเดอร์ในเวอร์ชันที่ใหม่กว่า


105
อิมูเลเตอร์ถูกย้ายออกจากtoolsและเข้าสู่emulatorไดเร็กทอรี
rmtheis

15
ดังที่ @rmtheis กล่าวว่ายิ่งกว่าการสร้างลิงก์สัญลักษณ์และพยายามที่จะโกงระบบคุณควรตรวจสอบและเพิ่มไฟล์ปฏิบัติการที่ถูกต้องในพา ธ เรียกใช้which emulatorเพื่อตรวจสอบว่าจะเลือกรายการใด /Users/{$USER_NAME}/Library/Android/sdk/emulator/emulatorเป็นสิทธิในการใช้ที่ถูกต้องที่จะใช้
Sameer Achanta

1
@Sameer - ไม่แน่ใจว่าข้อเสนอแนะของคุณแก้ไขปัญหาเดียวกันกับที่ฉันแก้ไขหรือไม่ โซลูชันของฉันแก้ไขข้อบกพร่องใน SDK ได้อย่างมีประสิทธิภาพ IIRC การติดตั้ง SDK ได้กำหนดเส้นทางแล้ว แต่น่าเสียดายที่พลาดไบนารีสำคัญในระบบ 64 บิต การใช้whichจะไม่พบไบนารีที่ถูกต้องเนื่องจากไม่ได้อยู่ในเส้นทางในสถานที่แรก ฉันพิจารณาโซลูชันที่อิงเส้นทาง แต่รู้สึกว่าโซลูชัน symlink มีแนวโน้มที่จะอยู่รอดในการอัปเกรดและมีอยู่ในตัวเอง นอกจากนี้ดูเหมือนว่าผู้สร้าง SDK ได้ย้ายสิ่งต่าง ๆ มาตั้งแต่ปี 2558 ไม่แน่ใจว่าโซลูชันของฉันมีความเกี่ยวข้องอีกต่อไปแล้ว
Tongfa

12
สำหรับ dev ของ CLI เปลี่ยนทั้งหมด/Users/amama/Library/Android/sdk/tools/emulator @PIXEL_2_XLเป็น/Users/amama/Library/Android/sdk/emulator/emulator @PIXEL_2_XL
Ray Foss

5
วิธีการแก้ปัญหา @RayFoss' ทำงานให้ฉันกับ Android 28 - วิ่งแทนemulator/emulator.exe tools/emulator
ทำเครื่องหมาย

46

นำทางไปยังโฟลเดอร์อีมูเลเตอร์ที่อยู่ภายในAndroid SDK folder/emulator

cd ${ANDROID_HOME}/emulator

จากนั้นพิมพ์คำสั่งเหล่านี้เพื่อเปิดโปรแกรมจำลองโดยไม่ต้องใช้ android studio:

$ ./emulator -list-avds
$ ./emulator -avd Nexus_5X_API_28_x86

Nexus_5X_API_28_x86 เป็น AVD ของฉันคุณต้องตั้งชื่อ AVD ของคุณ


27

สำหรับ Windows 10, 5.29.18:

ใช้คำสั่ง promt ฉันเพิ่งได้รับในไดเรกทอรีจำลอง:

cd C:\Android\sdk\emulator

จากนั้นพิมพ์คำสั่ง:

emulator -avd Nexus_S_API_27

Nexus_S_API_27 เป็นชื่อของโปรแกรมจำลองที่กำหนดเองของฉัน

ถ้าไม่เช่นนั้นจะเป็นการละเมิด:

PANIC: Missing emulator engine program for 'x86' CPU.

4
ในกรณีของฉันมันโยนPANIC: Missing emulator engine program for 'x86' CPU.บนเส้นทาง AVD ที่ถูกต้อง ตามที่อธิบายไว้ในstackoverflow.com/a/51627009/2914140 , รุ่นใหม่ของการเลียนแบบการใช้เส้นทางในขณะที่ผมเริ่มต้นจากemulator/emulator tools/emulator
CoolMind

17

บน Mac หลังจากติดตั้ง Android Studio IDE android-studio-ide-173.4907809-mac.dmgและใช้ studio SDK Manager เพื่อติดตั้งเครื่องมือ SDK

ป้อนคำอธิบายรูปภาพที่นี่

เพิ่มเส้นทางของคุณโดยใช้~/.profileหรือ~/.bash_profileให้แน่ใจว่าคุณมี$ANDROID_HOME/emulatorอยู่$PATHก่อนหน้า$ANDROID_HOME/toolsเช่น:

export ANDROID_HOME=$HOME/Library/Android/sdk
export PATH=$PATH:$ANDROID_HOME/emulator
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/tools/bin
export PATH=$PATH:$ANDROID_HOME/platform-tools

alias androidemulator='emulator -avd Nexus_5X_API_28_x86'

สิ่งนี้ทำให้ฉันมีวิธีง่ายๆใน Windows 10 และ Android Studio ด้วยเหตุผลที่ไม่ทราบสาเหตุไม่มีการติดตั้งโปรแกรมจำลองและ Android Emulator ไม่ได้ถูกตรวจสอบ (แม้ว่าฉันเคยใช้เมื่อสัปดาห์ที่แล้ว ตรวจสอบคลิกปุ่มใช้ติดตั้งโปรแกรมจำลองแล้วทั้งหมดก็ดี
slogan621

8

มีemulatorไฟล์ไบนารีสองชื่อ ซึ่งตั้งอยู่ภายใต้$SDK/tools/emulatorอีกภายใต้$SDK/emulator/

  • โปรดตรวจสอบให้แน่ใจว่าคุณมีโปรแกรมจำลองการตั้งค่าที่ถูกต้อง (ต้องเพิ่ม$SDK/emulatorใน env PATH ของคุณ

ฉันได้เขียนสคริปต์เพื่อช่วยฉันเรียกใช้รายการ avd

    #!/bin/bash -e


    echo "--- $# $(PWD)"
    HOME_CURRENT=$(PWD)
    HOME_EMULATOR=/Users/pcao/Library/Android/sdk/emulator

    if [ "$#" -eq 0 ]
    then
        echo "ERROR pls try avd 23 or avd 28 " 
    fi

    if [ "$1" = "23" ]
    then
        echo "enter 23"
        cd $HOME_EMULATOR
        ./emulator -avd Nexus_5_API_23_Android6_ &
        cd $HOME_CURRENT
    fi

    if [ "$1" = "28" ]
    then
        echo "enter 28"
        cd $HOME_EMULATOR
        ./emulator -avd Nexus_5_API_28_GooglePlay_ &
        cd $HOME_CURRENT
    fi


ในกรณีของฉันมันเป็นเพราะ $ ANDROID_SDK / เครื่องมืออยู่ในเส้นทางก่อน $ ANDROID_SDK / โปรแกรมจำลอง
ออสตินฝรั่งเศส

5

ON WINDOWS - การอัพเดทเส้นทางของระบบใช้งานได้สำหรับฉัน สร้างตัวแปรสภาพแวดล้อมสำหรับตำแหน่งของ sdk ของคุณที่เรียกว่าANDROID_SDKแล้วเพิ่มสิ่งเหล่านี้ในเส้นทางของคุณตามลำดับนี้:

%ANDROID_SDK%\emulator
%ANDROID_SDK%\platform-tools
%ANDROID_SDK%\tools
%ANDROID_SDK%\tools\bin

4

ทดสอบกับ macOS Mojave 10.14.5

เหตุผลและวิธีแก้ไข:

เราใช้เราควรจะใช้sdk/tools/emulatorsdk/emulator

WM-C02WM0T3HTD8:~ zgong$ emulator -avd Pixel_3_XL_API_Q_x86
PANIC: Unknown AVD name [Pixel_3_XL_API_Q_x86], use -list-avds to see valid list.
HOME is defined but there is no file Pixel_3_XL_API_Q_x86.ini in $HOME/.android/avd
(Note: Directories are searched in the order $ANDROID_AVD_HOME, $ANDROID_SDK_HOME/avd, and $HOME/.android/avd)
WM-C02WM0T3HTD8:~ zgong$ emulator -avd Pixel_3_XL_API_Q
PANIC: Missing emulator engine program for 'x86' CPU.

เราสามารถตรวจสอบสถานที่จำลอง:

WM-C02WM0T3HTD8:~ zgong$ which emulator
/Users/zgong/Library/Android/sdk/tools/emulator

ฉันทำ googling หลายครั้งและในขณะที่คำตอบส่วนใหญ่เกี่ยวกับการตั้งค่าพา ธ อย่างถูกต้องในเทอร์มินัลมันกลับกลายเป็นว่ามันเกี่ยวข้องกับการเปลี่ยนแปลงใน SDK เวอร์ชันล่าสุดที่ซึ่งแอพอีมูเลเตอร์อยู่ใน / จำลองแทน ของ / เครื่องมือ ออกจากที่นี่ในกรณีที่มีปัญหาเดียวกัน

เราจำเป็นต้องใช้ดังต่อไปนี้:

{sdk location}/emulator -avd {avd name}

นี่คือผลลัพธ์ที่แท้จริง:

WM-C02WM0T3HTD8:~ zgong$ /Users/zgong/Library/Android/sdk/emulator/emulator -avd Pixel_3_XL_API_Q
pc_memory_init: above 4g size: 40000000
emulator: WARNING: UpdateCheck: Failure: Error
emulator: WARNING: UpdateCheck: failed to get the latest version, skipping check (current version '29.2.1-5889189')
emulator: WARNING: UpdateCheck: Failure: Error
WebSocketServer listening on port 55850
Qt WebEngine ICU data not found at /Users/joshuaduong/qt-build-5.12.1/install-darwin-x86_64/resources. Trying parent directory...
Qt WebEngine ICU data not found at /Users/joshuaduong/qt-build-5.12.1/install-darwin-x86_64/resources. Trying parent directory...
Qt WebEngine ICU data not found at /Users/joshuaduong/qt-build-5.12.1/install-darwin-x86_64. Trying application directory...
Qt WebEngine ICU data not found at /Users/joshuaduong/qt-build-5.12.1/install-darwin-x86_64. Trying application directory...
Installed Qt WebEngine locales directory not found at location /Users/joshuaduong/qt-build-5.12.1/install-darwin-x86_64/translations/qtwebengine_locales. Trying application directory...
Qt WebEngine locales directory not found at location /Users/zgong/Library/Android/sdk/emulator/lib64/qt/libexec/qtwebengine_locales. Trying fallback directory... Translations MAY NOT not be correct.
Installed Qt WebEngine locales directory not found at location /Users/joshuaduong/qt-build-5.12.1/install-darwin-x86_64/translations/qtwebengine_locales. Trying application directory...
Qt WebEngine locales directory not found at location /Users/zgong/Library/Android/sdk/emulator/lib64/qt/libexec/qtwebengine_locales. Trying fallback directory... Translations MAY NOT not be correct.
Path override failed for key ui::DIR_LOCALES and path '/Users/zgong/.QtWebEngineProcess'
Path override failed for key ui::DIR_LOCALES and path '/Users/zgong/.QtWebEngineProcess'
Qt WebEngine resources not found at /Users/joshuaduong/qt-build-5.12.1/install-darwin-x86_64/resources. Trying parent directory...
Qt WebEngine resources not found at /Users/joshuaduong/qt-build-5.12.1/install-darwin-x86_64. Trying application directory...
Qt WebEngine resources not found at /Users/joshuaduong/qt-build-5.12.1/install-darwin-x86_64/resources. Trying parent directory...
Qt WebEngine resources not found at /Users/joshuaduong/qt-build-5.12.1/install-darwin-x86_64. Trying application directory...
[0403/154905.171893:WARNING:resource_bundle_qt.cpp(116)] locale_file_path.empty() for locale
[0403/154905.171871:WARNING:resource_bundle_qt.cpp(116)] locale_file_path.empty() for locale
Qt WebEngine ICU data not found at /Users/joshuaduong/qt-build-5.12.1/install-darwin-x86_64/resources. Trying parent directory...
Qt WebEngine ICU data not found at /Users/joshuaduong/qt-build-5.12.1/install-darwin-x86_64. Trying application directory...
Installed Qt WebEngine locales directory not found at location /Users/joshuaduong/qt-build-5.12.1/install-darwin-x86_64/translations/qtwebengine_locales. Trying application directory...
Qt WebEngine locales directory not found at location /Users/zgong/Library/Android/sdk/emulator/lib64/qt/libexec/qtwebengine_locales. Trying fallback directory... Translations MAY NOT not be correct.
Path override failed for key ui::DIR_LOCALES and path '/Users/zgong/.QtWebEngineProcess'
Qt WebEngine resources not found at /Users/joshuaduong/qt-build-5.12.1/install-darwin-x86_64/resources. Trying parent directory...
Qt WebEngine resources not found at /Users/joshuaduong/qt-build-5.12.1/install-darwin-x86_64. Trying application directory...
[0403/154907.393116:WARNING:resource_bundle_qt.cpp(116)] locale_file_path.empty() for locale

การอ้างอิง: https://www.reddit.com/r/androiddev/comments/a978kx/mac_can_run_emulator_fine_through_android_studio/



2

คุณไม่สามารถเริ่มไดเรกทอรี emulator-x86 ได้เพราะต้องมีการตั้งค่า LD_LIBRARY_PATH เป็นพิเศษเพื่อค้นหาไลบรารี PC Bios และ GPU emulation (นั่นเป็นเหตุผลว่าทำไม 'emulator' จึงมีการปรับเปลี่ยนพา ธ แล้วเรียก emulator-x86)

คุณอัพเดต ouput แรกหรือไม่ ดูเหมือนว่า 'emulator' ยังคงค้นหา '/ usr / local / bin / emulator-x86'


ตอนนี้ฉันไม่ได้แก้ไขมันในรายการของฉัน ฉันปล่อยให้มันอยู่ที่นั่นถ้ามีคนอื่นอาจมีปัญหาเช่นนี้และเห็นปัญหาของฉัน แต่ฉันเพิ่มคำอธิบาย: D
Visores

2

มีปัญหาเดียวกันใน Windows7 64 บิต สาเหตุที่มันไม่ได้หายไปemulator-x86.exeไฟล์ภายใต้ sdk / tools แก้ไขโดยการลบเครื่องมือ Android SDK โดยใช้ Android SDK Manager และติดตั้งอีกครั้ง ไฟล์นี้มีอยู่แล้วและโปรแกรมจำลองการทำงานตามที่คาดไว้


3
หลังจากลบเครื่องมือ SDK Android - อย่าปิดตัวจัดการ sdk หรือคุณไม่สามารถติดตั้งอีกครั้ง คำตอบแย่โดยไม่มีคำเตือน
Kiran

ขอบคุณมากสิ่งนี้แก้ไขปัญหาของฉันบน windows 10 64 บิต ฉันยังเปิดผู้จัดการ sdk ของฉันตามที่ @Kiran แนะนำ
BeeLabeille

2

ในกรณีของฉันฉันจำเป็นต้องติดตั้ง Android Emulator จาก Sdk manager และได้รับการแก้ไข

ป้อนคำอธิบายรูปภาพที่นี่


1

ลองทำตามขั้นตอนต่อไปนี้เพื่อเริ่มโปรแกรมจำลอง - x86:

export LD_LIBRARY_PATH=$SDK/tools/lib:$LD_LIBRARY_PATH
$SDK/tools/emulator-x86 <your-other-options>

ที่ $ SDK เป็นเส้นทางไปสู่การติดตั้ง SDK ของคุณ สรุปว่า 'อีมูเลเตอร์' พยายามทำอะไร คุณอาจต้องการที่จะเริ่มต้น emulator64-x86 แทน emulator-x86 ถ้าในอดีตมีอยู่แล้ว


1
ขอขอบคุณ! คุณทำให้ฉันก้าวไปข้างหน้ามาก :) ฉันใช้การส่งออกพร้อมเส้นทางไลบรารีและเริ่มโปรแกรมจำลอง ตอนนี้เขาบอกฉัน ### emulator64-x86 -avd test20 | HAX กำลังทำงานและอีมูเลเตอร์ทำงานในโหมด girt เร็ว | qemu: ไม่สามารถโหลด BIOS ของพีซี 'bios.bin' ### ไฟล์หนึ่งไฟล์ยังคงหายไป
Visores

1
โอเคสิ่งนี้ได้รับการแก้ไขถ้าฉันเรียกใช้ตัวจำลองด้วยเส้นทางแบบเต็มทำไม Oo? / Applications / Android \ Studio.app/sdk/tools/emulator64-x86 -avd test20 บางทีคุณอาจรู้วิธีแก้ไขปัญหานี้: D?
เยี่ยมชม

ปัญหาเกี่ยวกับ "bios.bin" ได้รับการแก้ไขที่นี่: groups.google.com/forum/#!msg/adt-dev/gwcLeOTfxD4/kW-qebk0C-wJ
เยี่ยมชม

1
เลียนแบบได้ถูกย้ายจากเข้าtools emulator
rmtheis

1

Avast Antivirus ตรวจจับ emulator-arm.exe เป็นเธรดและการบล็อกจากสาเหตุบางประการ เมื่อคุณเพิ่มการยกเว้นในหน้าคลังไวรัสด้วยการคลิกขวา -> "กู้คืนและเพิ่มลงในการยกเว้น" จะไม่ได้รับการแก้ไขในการรันในอนาคต เพื่อแก้ปัญหานี้อย่างถาวรใน Avast 2015:

การตั้งค่า ->

การป้องกันที่ใช้งานอยู่ ->

File System Shield ->

ปรับแต่ง ->

จากนั้นเพิ่มหัวข้อเป็นการยกเว้น จากนั้นกดตกลง


1

ลบทั้งเครื่องมือ Android SDK และ Android SDK PLatform-tools; จากนั้นดาวน์โหลดแพคเกจทั้งสองอีกครั้ง ตอนนี้สร้างตัวจำลองใหม่และเริ่มต้น; มันจะทำงาน. คุณอาจเรียกใช้อีมูเลเตอร์เก่าของคุณได้


1
สิ่งที่สำคัญมากในการติดตั้งตัวจำลองและเริ่มต้นจาก Android Studio ดังนั้นตัวจำลองจะเริ่มต้นระบบ Android ก่อน
Harry

1

สิ่งนี้ใช้ได้กับฉันใน macOS:

echo 'export PATH=$PATH:'$HOME'/Library/Android/sdk/emulator:'$HOME'/Library/Android/sdk/tools:'$HOME'/Library/Android/sdk/platform-tools' >> ~/.bash_profile
source ~/.bash_profile

1

ก่อนอื่นให้ตรวจสอบพา ธ ที่คุณได้รับwhich emulatorและหากคุณได้รับ/usr/local/share/android-sdk/tools/emulatorลบหรือเปลี่ยนชื่ออีมูเลเตอร์นั้น (มันเก่า) และใช้แทน/usr/local/share/android-sdk/emulator/emulatorซึ่งเป็นพา ธ ใหม่เส้นทางใหม่

หากคุณใช้ Homebrew และติดตั้งด้วยbrew cask install android-sdk android-studioคุณจะต้อง:

  1. ตรวจสอบ. bashrc หรือ. zshrc ของคุณว่าคุณมีเส้นทางที่ถูกต้อง:
# Remove $HOME/Library/Android paths
# The new way is to use ANDROID_SDK_ROOT
export ANDROID_SDK_ROOT="/usr/local/share/android-sdk"
# For good measure, add old paths to be backwards compatible with any scripts or 
whatnot. And to hopefully decrease confusion:
export ANDROID_HOME=$ANDROID_SDK_ROOT
export ANDROID_NDK_HOME=$ANDROID_SDK_ROOT/ndk-bundle
  1. จากนั้นรีสตาร์ทเทอร์มินัลเชลล์และตรวจสอบพา ธ ของคุณตามที่คุณต้องการ:

    set | grep ANDROID

  2. สุดท้ายด้วยชุดเส้นทางที่ถูกต้องโดยทั่วไปคุณจะต้องติดตั้ง ndk และเครื่องมือบางอย่าง:

    sdkmanager "ndk-bundle" "cmake;3.10.2.4988404" "lldb;3.1"

    และตรวจสอบรายการสำหรับชิ้นส่วนอื่น ๆ เช่นนี้ sdkmanager --list

ฉันยังปิด Android Studio ลบโฟลเดอร์ Android / Sdk เก่าภายใต้โฟลเดอร์ $ HOME ของฉันและเริ่ม Studio ใหม่และเมื่อถามว่า Sdk ของฉันหายไปที่ไหนฉันวางเส้นทาง Sdk: /usr/local/share/android-sdk


1

ฉันประสบปัญหาเดียวกันและไม่เคยทำงานให้ฉันยกเว้นจนกว่าจะไปที่โฟลเดอร์ตัวจำลองฉันพยายามส่งออกโฟลเดอร์ตัวจำลอง แต่ไม่ได้ผลสำหรับฉัน

cd $android_home/emulator and run emulator

ในที่สุดฉันเขียนอีเลียสสำหรับคำสั่งในไฟล์. bashrc

alias emulator="$ANDROID_HOME/emulator/emulator"

แทนที่จะcdเข้าสู่ไดเรกทอรีอีมูเลเตอร์การเพิ่มพา ธ$ANDROID_HOME/emulatorไปยัง PATH ก็เพียงพอ
kopos

ฉันพยายามเพิ่มโฟลเดอร์อีมูเลเตอร์ลงในพา ธ แต่ไม่ทำงาน
Mohannd

โปรดตรวจสอบให้แน่ใจว่าคุณเพิ่มก่อน $ ANDROID_HOME / tools
kopos

1

สำหรับผู้ใช้ Ubuntu

หากคุณได้รับPANIC: Missing emulator engine program for 'x86' CPU. ข้อผิดพลาดนี้

ลองเริ่มโปรแกรมจำลองจากโฟลเดอร์ emulator ใน SDK เหมือนด้านบน

usama@usama-Aspire-V5-471:~/Android/Sdk/emulator$ ./emulator -avd Pixel_2_API_29

ฉันได้ลบลิงค์และอธิบาย ขอบคุณ
UA_

-1

ข้อความนี้หมายถึงโปรแกรม 'emulator-x86' หรือ 'emulator64-x86' หายไปจาก $ SDK / tools / หรือไม่พบด้วยเหตุผลบางประการ

ก่อนอื่นคุณแน่ใจหรือว่าคุณมีการดาวน์โหลด / ติดตั้ง SDK ที่ถูกต้อง?


ฉันคิดว่าฉันมีการดาวน์โหลดที่ถูกต้อง ดาวน์โหลดสองครั้ง แต่ฉันสามารถลองอีกครั้ง
เยี่ยมชม

และฉันลองอีกครั้ง ... ข้อความเดียวกัน ฉันลบทั้งหมดที่ติดตั้งจาก sdk Manager ติดตั้งกลับลบภาพ avd ทั้งหมดและ ...
เยี่ยมชม

คุณสามารถเริ่มต้นด้วยตนเองจากบรรทัดคำสั่งเช่น: $ SDK / tools / emulator @ <avd-name> หากไม่สามารถใช้งานได้คุณสามารถลองกำหนด ANDROID_EMULATOR_DEBUG เป็น 1 ในขณะที่: ส่งออก ANDROID_EMULATOR_DEBUG = 1 $ SDK / tools / emulator @ <avd-name> -verbose นี่ควรพิมพ์ข้อมูลเกี่ยวกับสิ่งที่โปรแกรมพยายามทำ (เช่นค้นหาตำแหน่งเครื่องยนต์) โปรดแจ้งให้เราทราบผลลัพธ์
หลัก

เมื่อฉันรันโปรแกรมจำลอง - โปรแกรมทดสอบจำลอง 20: ข้อผิดพลาด: การกำหนดค่า AVD นี้ไม่มีไฟล์เคอร์เนล !!
เยี่ยมชม

1
จะอธิบายว่าทำไมมันใช้งานได้หลายวันก่อนฉันจะลอง
เยี่ยมชม

-3

ดูว่าไฟล์. exe ของคุณอยู่ในเขตกักกันไวรัสหรือไม่

Solutions:

  1. ดาวน์โหลด adt-bundle อีกครั้งจากhttps://developer.android.com/tools/sdk https://developer.android.com/tools/sdk
  2. เปิดไฟล์ซิป
  3. คัดลอกไฟล์. exe ที่หายไปจากโฟลเดอร์ \sdk\toolsไฟล์จากโฟลเดอร์
  4. วางไฟล์ที่คัดลอกไว้ในAndroid\sdk\toolsไดเรกทอรีของคุณ
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.