Rozwiązywanie znanych problemów z emulatorem Androida

Na tej stronie znajdziesz znane problemy, sposoby ich obejścia i wskazówki dotyczące rozwiązywania problemów Emulator Androida. Jeśli napotkasz problem, którego nie ma na tej liście, lub nie możesz udało się zastosować wymienione tutaj obejście, zgłoś błąd.

Problemy ogólne


Mapy Google nie wyświetlają się w rozszerzonych ustawieniach emulatora Androida

Emulator Androida w wersji starszej niż 34.2.13 nie będzie już miał funkcji Map Google w rozszerzonych elementach sterujących. Starsze nasze emulatory udostępniają wersję Chromium niezgodną z maps JavaScript API.

Sprawdź, czy na dysku jest wystarczająca ilość miejsca

Aby uniknąć awarii i zawieszania się z powodu braku miejsca na dysku, emulator sprawdza, czy jest wystarczająca ilość wolnego miejsca na dysku podczas uruchamiania, i się nie uruchamia chyba że masz co najmniej 5 GB wolnego miejsca. Jeśli emulator się nie uruchomi, sprawdź, czy masz wystarczającą ilość wolnego miejsca na dysku.

Programy antywirusowe

Wiele pakietów oprogramowania zabezpieczającego i antywirusowego monitoruje operacji odczytu i zapisu, używanie takiego oprogramowania może zmniejszyć wydajność narzędzi takich jak emulator Androida.

Wiele pakietów antywirusowych umożliwia dodawanie określonych aplikacji do lista zaufanych aplikacji, która umożliwia działanie wymienionych aplikacji. bez pogorszenia wydajności. Jeśli skuteczność kampanii jest niska zapisanych lub wczytywanych zrzutów AVD, możesz poprawić tę wydajność, dodając Emulator Androida jako zaufaną aplikację antywirusową i oprogramowaniu.

Wpływ na wydajność pakietów oprogramowania antywirusowego jest różny. Jeśli masz zainstalowane dodatkowe oprogramowanie antywirusowe oprócz tego, co jest dołączone dla danego systemu operacyjnego, można przeprowadzić proste testy, aby określić, oprogramowanie antywirusowe ma większy wpływ na ładowanie emulatora i oszczędza operacji.

Niektóre programy antywirusowe mogą być niezgodne z emulatorem Androida.

Jeśli używasz oprogramowania Avast i masz problem z uruchomieniem Androida Emulator, wyłącz opcję Używaj zagnieżdżonej wirtualizacji, gdy jest dostępna i Włącz wirtualizację wspomaganą sprzętowo w narzędziu Avast Rozwiązywanie problemów. ustawieniach. Poza tym po wyłączeniu wirtualizacji sprzętowej Avast upewnij się, że funkcja HAXM jest poprawnie skonfigurowana i zainstalowana jest na nowo HAXM z SDK Manager.

W systemie Windows czasami AVD zawiesza się przy użyciu HAXM. Problem można rozwiązać przez Całkowite odinstalowanie programu McAfee.

Windows: bezpłatna pamięć RAM i wymagane obciążenie

Gdy emulator się uruchamia, musi zainicjować system operacyjny Android jako gość. i pamięci RAM systemu. W systemie Windows emulator prosi o pobranie konta i cały rozmiar pamięci gościa w momencie uruchomienia, mimo że podczas rzeczywistego działania pamięć może być wyświetlana na żądanie. Emulator wysyła żądanie pełnej kwoty pamięci gościa w momencie uruchomienia, ponieważ system Windows zachowywał się przy tym, aby ilość fizycznej pamięci RAM i pliku stronicowania jest wystarczająca do przechowywania wszystkich danych. zestaw roboczy. To żądanie przygotowuje się na najgorszy przypadek, w którym cała pamięć gościa jest szybko obsługiwane bez możliwości pozbycia się lub uwolnienia pamięci w inny sposób.

Czasami, gdy emulator poprosi Windows o uwzględnienie tej pełnej pamięci gościa, żądanie przekracza bieżący limit zobowiązań, który stanowi sumę dostępnej fizycznej pamięci RAM i pliku stronicowania. W takim przypadku system Windows nie może zagwarantować, zbiór roboczy w najgorszym przypadku mieści się w fizycznej pamięci RAM lub pliku stronicowania, a Nie można uruchomić emulatora.

Zwykle ilość miejsca na dysku twardym przydzielonego dla pliku stronicowania W większości przypadków użycia emulatora fizycznego pamięci RAM wystarcza. Jeśli jednak nie możesz uruchomić emulatora z powodu przekroczenia wartości zatwierdzenia. zalecamy sprawdzenie bieżącej opłaty za zobowiązanie, która jest widoczna kartę Wydajność w Menedżerze zadań systemu Windows. Aby otworzyć Menedżera zadań: naciśnij Ctrl+Shift+Esc.

Aby zmniejszyć prawdopodobieństwo przekroczenia limitu zatwierdzeń na różne sposoby:

  • Przed uruchomieniem emulatora zwolnij fizyczną pamięć RAM, zamykając nieużywane aplikacje i plików.
  • Wyłącz narzędzia innych firm do zarządzania pamięcią i kompresji pamięci. Te usług komunalnych mogą nieefektywnie powodować zawyżanie opłat za usługi komunalne i spowodować systemu bliżej limitu zatwierdzeń.
  • Użyj rozmiaru zarządzanego przez system dla pliku stronicowania systemu Windows, co zapewnia większą elastyczność. i dynamicznie zwiększać rozmiar pliku strony, a tym samym limit zatwierdzenia, w w odpowiedzi na zwiększone zapotrzebowanie na emulator i inne aplikacje.

    Więcej informacji na temat opłat za zobowiązanie i dlaczego najlepiej sprawdza się ustawienie elastyczne, przeczytaj ten artykuł firmy Microsoft.

Wielodotyk nie działa w oknie narzędzia

Gesty wielodotykowe, w tym przesuwanie 2 palcami, nie działają, gdy emulator jest uruchomiony w oknie narzędzia. Aby włączyć obsługę wielokrotnego dotyku: uruchom emulator w osobnym oknie.

Emulator pogarsza wyjście audio Bluetooth

W przypadku korzystania z zestawu słuchawkowego Bluetooth Na wyjściu słuchawek dousznych pogarsza się podczas działania emulatora (problem 183139207). Dzieje się tak ponieważ po uruchomieniu emulatora włącza się mikrofon w zestawie słuchawkowym, powoduje, że zestaw słuchawkowy przełącza tryb dupleksu z obniżoną jakością.

Aby uniknąć tego problemu, wyłącz mikrofon w emulatorze, dodając hw.audioInput=no do pliku config.ini urządzenia wirtualnego z Androidem (AVD). Aby znaleźć plik config.ini AVD, przejdź do AVD w Menedżerze urządzeń, a potem kliknij jego rozszerzone menu i wybierz Pokaż na dysku.

Nie można uruchomić urządzeń wirtualnych z Androidem w ChromeOS

W ChromeOS uruchomienie urządzeń wirtualnych z Androidem (AVD) może się nie udać, ponieważ Brak zależności libnss3. Aby uruchomić narzędzia AVD, uruchom polecenie sudo apt install libnss3, aby ręcznie zainstalować bibliotekę libnss3.

Ostrzeżenia z czujnika przechylenia nadgarstka w Wear OS

W Wear OS emulator może wielokrotnie rejestrować ten komunikat dotyczący: czujnik pochylenia nadgarstka: the host has not provided value yet for sensorHandle=16

Deweloperzy mogą bez obaw zignorować te ostrzeżenia.

Okno umieszczonego emulatora jest za małe

Na komputerach o niższej rozdzielczości, na przykład 1024x768, może być trudno odczytuje ekran emulatora podczas działania w oknie narzędzia w Android Studio. Do zostaw emulatorowi więcej miejsca. Jeśli nie, zamknij okno narzędzia Menedżer urządzeń. otwartego. Możesz też wyciągnąć okno emulatora z Android Studio. Aby to zrobić, w kliknij Ustawienia > Tryb widoku i wybierz Okno zamiast Przypięty do doku.

Problemy z grafiką


Emulator Androida działa wolno po aktualizacji

Na uruchomienie emulatora Androida może mieć wpływ szereg czynników zewnętrznych powoli po aktualizacji. Aby rozpocząć rozwiązywanie problemów, zalecamy wykonanie tych czynności: następujące kroki:

  • Jeśli masz procesor graficzny Intel (a w szczególności Intel HD 4000), upewnij się, mają pobrane i zainstalowane najnowsze sterowniki karty graficznej Intel.
  • Jeśli masz procesor graficzny Intel i dyskretny, wyłącz GPU firmy Intel w Menedżerze urządzeń, aby mieć pewność, że za pomocą dyskretnego GPU.
  • Uruchom emulator w trybie -gpu swiftshader. Więcej informacje o konfigurowaniu grafiki opcji przyspieszenia w wierszu poleceń, zobacz Skonfiguruj akcelerację sprzętową.
  • Upewnij się, że Twój router nie używa adresów IPv6, jeśli nie masz Połączenie IPv6.

Jeśli nadal masz problemy z działającym emulatorem Androida zgłoś błąd i dołącz potrzebne szczegółowe informacje z emulatora Androida, abyśmy mogli zbadać sprawę.

Błąd: nie można znaleźć pliku vulkan-1.dll

Jeśli nie uda się uruchomić emulatora z powodu błędu vulkan-1.dll cannot be found, prawdopodobnie musisz zaktualizować emulator. Aktualizowanie emulatora na Androidzie Studio, otwórz Narzędzia > SDK Manager i zainstaluj najnowszą stabilną wersję aplikacji Platforma Androida.

Jeśli nie potrzebujesz aplikacji, które korzystają z Biblioteka grafiki Vulkan, włącz z Vulkan przez uruchamianie emulatora z wiersza poleceń z flagą -feature -Vulkan.

Nie udało się utworzyć zrzutu

Tworzenie zrzutu emulator obejmujący Vulkan Biblioteka grafiki nie jest obsługiwana. Aby uruchomić emulator bez interfejsu Vulkan, uruchamianie emulatora z wiersza poleceń z flagą -feature -Vulkan. Możesz też odinstalować aplikację i uniknąć korzystanie z aplikacji z interfejsem Vulkan, takich jak Chrome z interfejsem API 30 lub nowszym, i migawki w procesie programowania.

Nie można poprawnie otworzyć strony internetowej

Począwszy od poziomu interfejsu API 30, Chrome używa interfejsu API biblioteki grafiki Vulkan jako w backendzie, przez co mogą występować problemy ze zgodnością na niektórych komputerami. Jeśli Chrome nie renderuje się prawidłowo, spróbuj uruchamianie emulatora z wiersza poleceń z flagą -feature -Vulkan.

Ostrzeżenie dotyczące sterownika GPU – powrót do oprogramowania

Jeśli widzisz ostrzeżenie o zastępczym sterowniku GPU, na nieobsługiwanym GPU. Domyślnie jest to ustawienie automatyczne, które może wybierać renderowanie programowe. Jeśli wybierzesz sprzęt, który możesz wymusić do używania renderowania sprzętowego. (nadal może wyświetlić się ostrzeżenie).

W przypadku zdjęć spoza Sklepu Play możesz to zrobić w Menedżerze urządzeń -> 3 kropki -> edytować. W przypadku obrazów w Sklepie Play musisz ręcznie edytować te 2 pliki konfiguracyjne:

~/.android/nazwa_avd.avd/config.ini

~/.android/nazwa_avd.avd/hardware-qemu.ini

i zmień hw.gpu.mode na host

Pamiętaj, że może to zmniejszyć stabilność emulatora. Więcej informacji znajdziesz w opisie błędu.

Emulator nie uruchamia się na Pulpicie zdalnym Chrome w systemie Windows

Jeśli emulator nie uruchomi się podczas korzystania z Pulpitu zdalnego Chrome w systemie Windows, Obecny zalecany sposób obejścia tego problemu to użycie flagi use-gpu w rodzaju -gpu host lub -gpu swiftshader.

Problemy z siecią


Brak internetu: nie udało się znaleźć adresu DNS serwera

Jeśli emulator nie może połączyć się z internetem, spróbuj uruchamianie emulatora z wiersza poleceń za pomocą opcji -dns-server “2001:4860:4860::8844,2001:4860:4860::8888,8.8.8.8,8.8.4.4” Ten dostarcza rozdzielaną przecinkami listę publicznych adresów IP Google DNS. Dla: więcej informacji na temat publicznego DNS Google, zobacz Publiczny DNS Google dla Twoich urządzeń.

Brak internetu: problemy z rozpoznawaniem nazw DNS

Czasami adresy DNS w pliku /etc/resolv.conf nie działają poprawnie. Aby obejść ten problem, możesz: uruchamianie emulatora z wiersza poleceń przy użyciu opcji -dns-server 8.8.8.8 lub -dns.server 2001:4860:4860::8888, aby przez sieć wykorzystującą tylko IPv6.

Starsze problemy (w wycofanych emulatorach lub w starych systemach)


Nie udało się uruchomić AVD

Narzędzie AVD może się nie uruchomić, jeśli istnieje raport o awariach nowszego emulatora (numer problemu 281725854). Ten Ten problem występuje tylko u użytkowników, którzy po aktualizacji z wczesnych wersji 33.x do 32.1.13, przy ostatnim uruchomieniu wersji 33.x aplikacja wystąpiła i nie została zrestartowana. ich średni czas wyświetlania, więc katalog %TEMP% lub /tmp pozostanie włączony. Jeśli wystąpił ten problem, spróbuj wyczyścić katalog %TEMP% (/tmp Linux lub macOS).

Windows: emmulator nie uruchamia się, jeśli w nazwie AVD jest kod Unicode.

Gdy Menedżer urządzeń utworzy w systemie Windows urządzenie wirtualne z Androidem, domyślnie tworzy średni czas oglądania o wartości C:\Users\<name>\.android\avd. Jeśli jednak Nazwa AVD (<name>) zawiera kod Unicode, emulator nie może prawidłowo uruchomić AVD w przypadku domyślnej lokalizacji.

Ten problem został rozwiązany w emulatorze w wersji 31.3.6 i nowszych. Aby rozwiązać ten problem, zaktualizuj emulator, wybierając kolejno Narzędzia > Pakiet SDK Menedżer.

Aby obejść ten problem, możesz też ustawić zmienną środowiskową ANDROID_SDK_HOME do katalogu niestandardowego przed utworzeniem AVD. Przykład: utwórz katalog C:\Android\home, a potem ustaw ANDROID_SDK_HOME na ten w nowo utworzonym katalogu. Więcej informacji znajdziesz w sekcji Środowisko .

Hipernadzorcy nie mogą emulować niektórych funkcji procesora wymaganych przez systemy Android x86

Hipernadzorcy zwykle nie mogą emulować niektórych funkcji procesora, takich jak Strumieniowe przesyłanie rozszerzeń SIMD (SSE), wymaganych przez systemy Android x86.