Próbuję uruchomić emulator Androida za pomocą AVD Managera. to jest mój avd: http://image-upload.de/image/fnx79V/52b0d050ee.png
i tak się dzieje, uruchamiając:
http://image-upload.de/image/vGpQfa/e912d83939.png
Mam Macbook Pro Retina. Zainstalowano sterownik Haxm bezpośrednio ze strony Intel.
Żaden emulator nie działa. Wszystkie otrzymują ten sam komunikat „błąd”.
Uruchamianie polecenia (ten błąd wystąpił, gdy użyłem Homebrew do zainstalowania Androida-SDK i Android-platforma-narzędzia | Każdy, kto ma ten sam problem, powinien go usunąć lub sprawdzić, gdzie jest konflikt)
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.
Po rozwiązaniu problemu z Homebrew:
Spróbowałem trochę i znalazłem to:
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'
Dla wszystkich, którzy mają ten sam problem, może te kroki pomogą:
Uruchom emulator w trybie debugowania:
export ANDROID_EMULATOR_DEBUG=1 emulatorName
Jeśli istnieje ścieżka, która wygląda dziwnie, sprawdź inne instalacje, takie jak Homebrew, i usuń konflikt (odinstaluj jedną)
Gdy brakuje biblioteki, musisz wyeksportować zmienną:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ANDROID_HOME/tools/lib
A gdy pojawia się błąd „qemu: nie można załadować BIOS komputera„ bios.bin ””, jedną z poprawek jest uruchomienie emulatora z pełną ścieżką:
/Applications/Android\ Studio.app/sdk/tools/emulator64-x86 -avd test20
In your case it is maybe a other path.
źródło
emulator
czytools
- musiałem ręcznie określić-kernel
argument dla tego postu stackoverflow.com/a/52161215/3700490Odpowiedzi:
Jeśli używasz systemu macOS, dodaj do ścieżki zarówno zestaw SDK systemu Android, jak
emulator
itools
katalogi:Krok 1: W moim przypadku kolejność była ważna, najpierw,
emulator
a potemtools
.Krok 2: Załaduj ponownie
.bash_profile
lub W.bashrc
zależności od systemu operacyjnegoKrok 3: Uzyskaj listę emulatorów:
$emulator -list-avds
Krok 4: Uruchom emulator z wiersza poleceń i zamień
avd
na nazwę swojego emulatora$emulator @avd
Nie zapomnij dodać
@
symbolu.Zostało to przetestowane w systemie macOS High Sierra 10.13.4 i Android Studio 3.1.2.
źródło
Miałem ten problem po aktualizacji Androida Studio do wersji 3.2, a nawet aktualizacji niektórych pakietów SDK.
Przyczyną było to, że zmieniła się ścieżka do emulatora, więc nie używaj,
...../Android/Sdk/tools/emulator
ale zamiast tego....../Android/Sdk/emulator/emulator
.źródło
Dla mnie działało następujące obejście, aby uruchomić emulator-x86:
Lub w systemie Windows otwórz wiersz polecenia (administrator)
A teraz emulator uruchomi się z menedżera SDK.
Uwaga : Emulatory znajdują się w
emulators
folderze w nowszych wersjach.źródło
tools
doemulator
katalogu.which emulator
aby sprawdzić, który jest rzeczywiście wybierany./Users/{$USER_NAME}/Library/Android/sdk/emulator/emulator
jest odpowiednim plikiem wykonywalnym do użycia.which
nie znalazłoby poprawnego pliku binarnego, ponieważ w pierwszej kolejności nie znajdował się na ścieżce. Rozważyłem rozwiązanie oparte na ścieżce, ale czułem, że rozwiązanie dowiązania symbolicznego jest bardziej prawdopodobne, że przetrwa uaktualnienie i pozostanie samodzielne. Wygląda na to, że twórcy pakietu SDK zmieniali ustawienia od 2015 roku, nie jestem pewien, czy moje rozwiązanie jest już aktualne./Users/amama/Library/Android/sdk/tools/emulator @PIXEL_2_XL
na/Users/amama/Library/Android/sdk/emulator/emulator @PIXEL_2_XL
emulator/emulator.exe
zamiasttools/emulator
.Przejdź do folderu emulatora znajdującego się w
Android SDK folder
/emulator
cd ${ANDROID_HOME}/emulator
Następnie wpisz następujące polecenie, aby otworzyć emulator bez studia Android:
Nexus_5X_API_28_x86
to My AVD, musisz podać swoją nazwę AVDźródło
W systemie Windows 10, 5.29.18:
Za pomocą polecenia promt właśnie znalazłem się w katalogu emulatora:
a następnie wpisz polecenie:
Nexus_S_API_27
to nazwa mojego niestandardowego emulatora.Othewize będzie nadużywać:
źródło
PANIC: Missing emulator engine program for 'x86' CPU.
na prawidłową ścieżkę AVD. Jak opisano w stackoverflow.com/a/51627009/2914140 , nowsze wersje emulatorów używająemulator/emulator
ścieżki, podczas gdy ja zaczynałemtools/emulator
.Na komputerze Mac po zainstalowaniu Android Studio IDE
android-studio-ide-173.4907809-mac.dmg
i użyciu studia SDK Manager do zainstalowania narzędzi SDKDodaj do PATH przy użyciu
~/.profile
lub~/.bash_profile
i upewnij się, że masz$ANDROID_HOME/emulator
w swoim$PATH
zanim$ANDROID_HOME/tools
tak:źródło
Istnieją dwa
emulator
pliki binarne o nazwie . który znajduje się pod$SDK/tools/emulator
innym pod$SDK/emulator/
$SDK/emulator
do swojej ŚRODKÓW envNapisałem skrypt, który pomoże mi wywołać listę avd
źródło
NA WINDOWS - aktualizacja ścieżki systemu działała dla mnie. Utwórz zmienną środowiskową dla lokalizacji twojego sdk,
ANDROID_SDK
a następnie dodaj je do swojej ścieżki, w następującej kolejności:źródło
Testowane na macOS Mojave 10.14.5.
Powód i rozwiązanie:
używamy
sdk/tools/emulator
, powinniśmy używaćsdk/emulator
.Możemy sprawdzić lokalizację emulatora:
Musimy użyć, jak poniżej:
{sdk location}/emulator -avd {avd name}
Oto prawdziwy wynik:
Odniesienie: https://www.reddit.com/r/androiddev/comments/a978kx/mac_can_run_emulator_fine_through_android_studio/
źródło
Możesz także wypróbować sugerowane tutaj: https://www.stkent.com/2017/08/10/update-your-path-for-the-new-android-emulator-location.html
Krótko mówiąc, uruchom emulator z
sdk/emulator
folderuźródło
Nie można uruchomić katalogu emulator-x86, ponieważ musi on specjalnie skonfigurować LD_LIBRARY_PATH, aby znaleźć biblioteki PC Bios i biblioteki emulacji GPU (dlatego istnieje „emulator”, modyfikuje ścieżkę, a następnie wywołuje emulator-x86).
Czy zaktualizowałeś pierwszy wynik? Wygląda na to, że „emulator” wciąż znajduje „/ usr / local / bin / emulator-x86”
źródło
Miał ten sam problem na Windows7 64bit. Powodem, dla którego nie brakowało
emulator-x86.exe
pliku w sdk / tools. Naprawiono go, usuwając Narzędzia zestawu SDK systemu Android za pomocą Menedżera zestawu SDK systemu Android i instalując go ponownie. Plik istnieje teraz i emulator działa zgodnie z oczekiwaniami.źródło
W moim przypadku musiałem zainstalować emulator Androida z menedżera Sdk i został naprawiony
źródło
Spróbuj wykonać następujące czynności, aby uruchomić emulator-x86:
Gdzie $ SDK jest ścieżką do instalacji SDK. W skrócie to, co próbuje zrobić „emulator”. Możesz jednak uruchomić emulator64-x86 zamiast emulatora-x86, jeśli ten pierwszy istnieje.
źródło
tools
doemulator
.Avast Antivirus wykrywa emulator-arm.exe jako wątek i blokuje go z kilku powodów. Po dodaniu wykluczeń na stronie Skrzynia wirusów prawym przyciskiem myszy -> „przywróć i dodaj do wykluczeń”, nie zostanie to rozwiązane w przyszłych uruchomieniach. Aby rozwiązać ten problem na stałe w programie Avast 2015:
Ustawienia ->
Aktywna ochrona ->
Osłona systemu plików ->
Dostosuj ->
Wykluczenia następnie dodaj wątek jako wykluczenie. A następnie naciśnij OK.
źródło
Usuń zarówno narzędzia Android SDK, jak i narzędzia Android SDK PLatform-narzędzia; następnie ponownie pobierz oba pakiety. Teraz utwórz nowy emulator i uruchom go; to będzie działać. Możesz być w stanie uruchomić swoje stare emulatory.
źródło
To działało dla mnie na macOS:
źródło
Po pierwsze, należy sprawdzić ścieżkę można dostać się
which emulator
i jeśli uzyska/usr/local/share/android-sdk/tools/emulator
następnie usunąć lub zmienić nazwę tego emulatora (to stary jeden) i zamiast tego użyć/usr/local/share/android-sdk/emulator/emulator
, która jest nowa ścieżka .Jeśli używasz Homebrew i jest zainstalowany
brew cask install android-sdk android-studio
, musisz:Następnie ponownie uruchom powłokę terminala i sprawdź, czy ścieżki są zgodne z oczekiwaniami:
set | grep ANDROID
Na koniec, przy ustawieniu prawidłowych ścieżek, zwykle musisz zainstalować ndk i niektóre narzędzia:
sdkmanager "ndk-bundle" "cmake;3.10.2.4988404" "lldb;3.1"
i sprawdź listę innych takich kawałków
sdkmanager --list
Zamknąłem również Android Studio, usunąłem stary folder Android / Sdk w folderze $ HOME i ponownie uruchomiłem Studio, a kiedy zapytałem, gdzie poszedł mój Sdk, wkleiłem ścieżkę Sdk:
/usr/local/share/android-sdk
źródło
Napotkałem ten sam problem i nigdy nie pracowałem dla siebie, chyba że do momentu przejścia do folderu emulatora, próbowałem wyeksportować folder emulatora, ale nie działałem dla mnie
, w końcu piszę Eliasa dla polecenia w pliku .bashrc
źródło
cd
ing do katalogu emulatora$ANDROID_HOME/emulator
wystarczy dodać do PATHDla użytkowników Ubuntu
Jeśli otrzymujesz
PANIC: Missing emulator engine program for 'x86' CPU.
ten błądSpróbuj uruchomić emulator z folderu emulatora w SDK, jak wyżej
źródło
Ten komunikat oznacza, że brakuje programu „emulator-x86” lub „emulator64-x86” w $ SDK / tools /, lub z jakiegoś powodu nie można go znaleźć.
Po pierwsze, czy jesteś pewien, że masz prawidłowy plik do pobrania / instalacji zestawu SDK?
źródło
Sprawdź, czy plik .exe znajduje się w kwarantannie antywirusowej
Rozwiązania:
\sdk\tools
.Android\sdk\tools
katalogu.źródło