Не запускается эмулятор android visual studio
В этой статье описаны наиболее типичные ошибки и предупреждения, возникающие при настройке и запуске Android Emulator. Кроме того, в нем описываются решения для устранения этих ошибок и различные советы по устранению неполадок, помогающие диагностировать проблемы эмулятора.
Проблемы развертывания в Windows
Ошибки развертывания
Если отображается ошибка о сбое при установке APK на ваш компьютер или при запуске Android Debug Bridge (adb), убедитесь, что пакет SDK для Android может подключиться к эмулятору. Для проверки связи с эмулятором сделайте следующее:
Запустите эмулятор из диспетчер устройств Android (выберите виртуальное устройство и нажмите кнопку "Пуск").
Откройте командную строку и перейдите в папку, в которой установлен adb. Если пакет SDK для Android установлен в расположении по умолчанию, adb находится в папке C:\Program Files (x86)\Android\android-sdk\platform-tools\adb.exe; Если нет, измените этот путь для расположения пакета SDK для Android на компьютере.
Введите следующую команду:
Если эмулятор доступен из Android SDK, то он отобразится в списке подключенных устройств. Пример:
Если эмулятор не отображается в этом списке, запустите диспетчер пакетов SDK для Android, примените все обновления, а затем повторите попытку запуска эмулятора.
Ошибка доступа к MMIO
Отсутствующие сервисы Google Play
Если эмулированное устройство Android не имеет установленных служб Google Play или Google Play Store, вероятно, вы создали виртуальное устройство, за исключением этих пакетов. При создании виртуального устройства обязательно выберите один или оба из следующих параметров:
- API Google — включает службы Google Play на виртуальном устройстве.
- Google Play Store включает Google Play Store на виртуальном устройстве.
Например, это виртуальное устройство будет включать сервисы Google Play и Google Play Маркет:
Образы Google Play Маркет доступны только для некоторых типов базовых устройств, например Pixel, Pixel 2, Nexus 5 и Nexus 5X.
Проблемы производительности
Проблемы производительности обычно вызваны одной из следующих проблем:
- Эмулятор работает без аппаратного ускорения.
- Виртуальное устройство, работающее в эмуляторе с помощью образа на основе Arm.
В следующих разделах подробно описаны эти сценарии.
Аппаратное ускорение не включено
Когда вы запускаете виртуальное устройство и не включаете аппаратное ускорение, диспетчер устройств отображает диалоговое окно ошибки, аналогичное следующему изображению:
Чтобы устранить эту ошибку, выполните действия по устранению неполадок в разделе "Проблемы с ускорением оборудования ".
Проблемы с аппаратным ускорением
При использовании аппаратного ускорения могут возникнуть проблемы с конфигурацией или конфликты с другим программным обеспечением на компьютере. Первым шагом в устранении неполадок является проверка включения аппаратного ускорения. Пакет SDK для Android можно использовать для проверки этого параметра. Откройте командную строку и введите следующую команду:
Эта команда предполагает, что пакет SDK для Android установлен в расположении по умолчанию C:\Program Files (x86)\Android\android-sdk. Если пакет SDK для Android установлен в другом месте, измените предыдущую команду в нужное расположение.
Аппаратное ускорение недоступно
Если аппаратное ускорение недоступно, см. раздел "Включение ускорения Hyper-V ", чтобы узнать, как включить аппаратное ускорение на компьютере.
Неправильные настройки BIOS
Чтобы устранить эту проблему, перезагрузите BIOS на компьютере и включите следующие параметры:
- Технология виртуализации (может иметь другое название в зависимости от производителя системной платы).
- Предотвращение исполнения данных на основе оборудования.
Если проблемы по-прежнему возникают из-за проблем, связанных с Hyper-V и HAXM, см. в следующем разделе.
Проблемы с Hyper-V
В некоторых случаях при включении одновременно Hyper-V и платформы гипервизора Windows в диалоговом окне Включение и отключение компонентов Windows Hyper-V включается некорректно. Чтобы убедиться, что Hyper-V включен, сделайте следующее:
Введите PowerShell в поле поиска Windows.
Щелкните правой кнопкой мыши Windows PowerShell в результатах поиска и выберите Запуск от имени администратора.
В консоли PowerShell выполните следующую команду:
В консоли PowerShell выполните следующую команду:
Если Hyper-V или HypervisorPlatform не включены, используйте следующие команды PowerShell, чтобы включить их:
После завершения этих команд выполните перезагрузку.
Дополнительные сведения о включении Hyper-V (в том числе методы включения Hyper-V с помощью средства обслуживания и администрирования образов развертывания) см. в разделе Установка Hyper-V.
Проблемы с HAXM
Проблемы с HAXM часто вызваны конфликтом с другими технологиями виртуализации, неправильной конфигурацией или устаревшим драйвером HAXM.
Процесс HAXM не выполняется
Если решение HAXM установлено, введите следующую команду в командной строке, чтобы проверить, что процесс HAXM запущен:
Если процесс HAXM запущен, вы увидите примерно следующий результат:
Если STATE значение не задано RUNNING , см. статью "Как использовать intel Hardware Accelerated Execution Manager для устранения проблемы".
Конфликты HAXM с другими технологиями виртуализации
HAXM может конфликтовать с другими технологиями, использующими виртуализацию, такими как Hyper-V, Windows Device Guard и некоторые антивирусы:
Hyper-V — если вы используете версию Windows до обновления Windows 10 апреля 2018 г. (сборка 1803) и Hyper-V включена, выполните действия, описанные в разделе "Отключение Hyper-V", чтобы включить HAXM.
Device Guard — Device Guard и Credential Guard могут препятствовать отключению Hyper-V на Windows компьютерах. Порядок отключения Device Guard и Credential Guard см. в разделе Отключение Device Guard.
Антивирусное программное обеспечение — если вы используете антивирусную программу, использующую аппаратную виртуализацию (например, Avast), отключите или удалите это программное обеспечение, перезагрузите и повторите попытку эмулятора Android.
Неправильные параметры BIOS для HAXM
Этот компьютер соответствует требованиям HAXM, но технология Intel Virtualization Technology (VT-x) не включена.
Чтобы устранить эту ошибку, загрузите компьютер в BIOS, включите VT-x и SLAT (преобразование адресов второго уровня) и перезагрузите компьютер.
Отключение Hyper-V
Если вы используете версию Windows до обновления Windows 10 апреля 2018 г. (сборка 1803) и Hyper-V включена, необходимо отключить Hyper-V и перезагрузить компьютер для установки и использования HAXM. Если вы используете обновление Windows 10 апреля 2018 г. (сборка 1803) или более поздней версии, Android Emulator версии 27.2.7 или более поздней можно использовать Hyper-V (вместо HAXM) для аппаратного ускорения, поэтому отключить Hyper-V не нужно.
Технологию Hyper-V можно отключить из панели управления, выполнив следующие действия:
Введите компоненты windows в поле поиска Windows и выберите Включение и отключение компонентов Windows в результатах поиска.
Снимите флажок Hyper-V:
Также для отключения гипервизора Hyper-V можно использовать следующую команду Powershell:
Intel HAXM и Microsoft Hyper-V не могут одновременно быть активными. К сожалению, невозможно переключиться между Hyper-V и HAXM без перезагрузки компьютера.
Возможно, предыдущие шаги не будут успешно отключены Hyper-V, если Device Guard и Credential Guard включены. Если вы не можете отключить Hyper-V или, кажется, отключены, но установка HAXM по-прежнему завершается сбоем, выполните действия, описанные в следующем разделе, чтобы отключить Device Guard и Credential Guard.
Отключение функции Device Guard
Функции Device Guard и Credential Guard могут препятствовать отключению технологии Hyper-V на компьютерах под управлением ОС Windows. Это часто происходит на компьютерах, присоединенных к доменам, которые настраиваются и контролируются управляющей ими организацией. Чтобы проверить, выполняется ли функция Device Guard в ОС Windows 10, выполните следующие действия:
Введите Сведения о системе в поле поиска Windows и выберите Сведения о системе в результатах поиска.
В разделе Сведения о системе проверьте наличие службы Безопасность на основе виртуализации Device Guard и убедитесь, что она имеет состояние Выполняется:
Если функция Device Guard включена, выполните следующие действия для ее отключения:
Убедитесь, что технология Hyper-V отключена в окне Включение или отключение компонентов Windows, как описывается в предыдущих разделах.
В поле поиска Windows введите gpedit.msc и выберите элемент Изменение групповой политики. Будет запущен редактор локальных групповых политик.
В локальном редакторе групповая политика перейдите к системе > Device Guard для административных шаблонов > конфигурации > компьютера:
Измените значение параметра Включить средство обеспечения безопасности на основе виртуализации на Отключено (как показано выше) и закройте редактор локальных групповых политик.
В поле поиска Windows введите cmd. Когда в результатах поиска появится элемент Командная строка, щелкните пункт Командная строка правой кнопкой мыши и выберите Запустить от имени администратора.
Скопируйте и вставьте следующие команды в окно командной строки (если диск Z: используется, выберите вместо него букву свободного диска):
Перезапустите компьютер. На экране загрузки должен появиться запрос следующего вида:
Вы действительно хотите отключить Credential Guard?
Нажмите указанную в запросе клавишу, чтобы отключить Credential Guard.
После перезагрузки компьютера еще раз убедитесь, что технология Hyper-V отключена (см. ранее описываемые действия).
Если технология Hyper-V по-прежнему не отключена, значит, отключение функций Device Guard или Credential Guard запрещено политиками на вашем присоединенном к домену компьютере. В таком случае вы можете запросить у администратора домена исключение, которое позволит отключить Credential Guard. Кроме того, можно использовать компьютер, который не присоединен к домену, если необходимо использовать HAXM.
Дополнительные советы по устранению неполадок
Следующие рекомендации часто помогают диагностировать проблемы с эмулятором Android.
Запуск эмулятора из командной строки
Если эмулятор еще не запущен, его можно запустить из командной строки (а не из Visual Studio), чтобы просмотреть выходные данные. Как правило, образы AVD эмулятора Android хранятся в следующем расположении: %userprofile%\.android\avd.
Запустите эмулятор с образом AVD из этого расположения, передав имя папки AVD. Например, эта команда запускает виртуальное устройство Android с именем Pixel_API_27:
Эта команда предполагает, что пакет SDK для Android устанавливается в расположении по умолчанию C:\Program Files (x86)\Android\android-sdk. Если пакет SDK для Android установлен в другом месте, измените предыдущую команду в нужное расположение.
При выполнении этой команды создается множество строк выходных данных во время запуска эмулятора. В частности, строки, такие как следующий пример, печатаются, если аппаратное ускорение включено и работает правильно. В этом примере HAXM используется для аппаратного ускорения:
Просмотр журналов Device Manager
Часто можно диагностировать проблемы с эмулятором, просмотрев журналы Device Manager. Эти журналы записываются в следующее расположение: %userprofile%\AppData\Local\Xamarin\Logs\16.0.
Просмотрите файл DeviceManager.log в текстовом редакторе, например в Блокноте. В следующем примере записи журнала указано, что HAXM не найден на компьютере:
This topic contains information to help you resolve issues that you may experience when you're using the Visual Studio Emulator for Android.
When the emulator is installed, the setup program checks the prerequisites for running the software. It displays warnings if the prerequisites are not present, but it does not require them for installation.
This topic contains the following sections.
Before you start
Before you begin troubleshooting, it may be useful to review the following topics:
Emulator fails to install
If you don't have Hyper-V installed, you will see the following message when you try to install the emulator. You must have a machine that supports HyperV and it must be enabled.
This message applies both to the Visual Studio Emulator for Android and the Windows Phone Emulator. Windows 8.1 and Windows 10 support the emulator.
If you see this message, check the System requirements for the Visual Studio Emulator for Android to see whether you can run the emulator.
Cannot connect to network destinations on a domain or corporate network
The Visual Studio Emulator for Android appears on the network as a separate device with its own IP address. It is not joined to a Windows domain and it does not share domain or workgroup credentials with the host computer.
If your network requires domain or workgroup authorization for basic network and Internet connectivity, contact your IT administrator for an exception. This exception allows your development computer to serve as a boundary machine and to accept connections from non-domain-joined network devices like the emulator.
The Visual Studio Emulator for Android also uses its own set of MAC addresses. If you can't access network or Internet resources from the emulator, check with your IT administrator to make sure that the emulator's MAC addresses have been authorized on your network.
To view the emulator's MAC addresses
Launch the emulator.
On the emulator toolbar, click the chevron button (>>) to open the Additional Tools window.
In the Additional Tools window, click the Network tab.
On the Network page, locate the Physical address entries.
Cannot connect to network destinations when network settings require manual configuration
To connect to network destinations from the emulator, your network must meet the following requirements:
DHCP. The emulator requires DHCP because it configures itself as a separate device on the network with its own IP address.
Automatically configured DNS and gateway settings. It's not possible to configure DNS and gateway settings manually for the emulator.
If your network requires manually configured settings, check with your IT administrator to determine how you can enable network connectivity for the emulator.
Emulator starts slowly, fails to start due to a timeout, or app deployment fails
Under certain conditions, the emulator takes several minutes to start or fails to start due to a timeout. When the emulator fails to start, you see the following message: App deployment failed. Please try again . The following conditions can result in this error.
Running the Visual Studio Emulator for Android from a bootable VHD. This configuration is not supported.
A faulty hard drive. Consider running the chkdsk program.
A hard drive that needs to be defragmented. Consider defragmenting the drive.
A hard drive that is almost full. Check the space available on the drive.
Not enough memory is available because of other running applications. Reduce the number of applications that are consuming memory or increase the amount of memory.
Generally, any factor that is contributing to poor performance on the system. Begin troubleshooting with the component that has the lowest subscore in the Windows Experience Index, which you can find on the Performance Information and Tools page of Control Panel.
Emulator fails to start
If the emulator was working previously, but does not work now, go through the following tasks. If you are using the emulator for the first time, see Emulator fails to start (first use) before you try these steps.
Remove any other Hyper-V instances of the emulator.
Close Visual Studio.
Open Hyper-V Manager and stop any Hyper-V instances of the Emulator (Virtual Machines) that are already running and possibly in a corrupt state.
In Hyper-V Manager, delete any other emulator VMs.
Reboot your machine.
Make sure you have at least 4GB system memory and that it is not being consumed by other resource-intensive programs and processes (for example, try closing any browser windows).
In Hyper-V Manager, open the Virtual Switch Manager and check to see that you have two network switches; verify that the first one is the internal switch and the second is external.
If the setup is incorrect and you are using Windows 10, you might try to Reinstall network devices using netcfg -d command (section 6).
If these steps do not resolve the issue, see Emulator fails to start (first use) for information on 3rd party software that may be interfering with the emulator.
Emulator fails to start (first use)
If the emulator does not start, go through the following tasks to identify and fix the issue.
Make sure that minimum hardware requirements are fulfilled and that BIOS settings are correct.
The Emulator and Windows 8 Hyper-V require a 64-bit processor with Second Level Address Translation (SLAT). For Intel, you essentially need a Core i3, i5 or i7 processor (or one of many Xeons). A list of AMD chips is available here.
Make sure your computer meets the system requirements.
Verify that the coreinfo tool reports that your computer is SLAT capable.
Within the BIOS settings of your computer, make sure that all virtualization technology is enabled. The exact BIOS descriptions may vary for each hardware manufacturer. In general, enable features related to:
SLAT (Second Level Address Translation)
EPT (Extended Page Tables) (Intel)
NPT (Nested Page Tables) (AMD)
RVI (Rapid Virtualization Indexing) (AMD)
VMX (an Intel acronym indicating hardware assisted virtualization support)
SVM (an AMD acronym indicating hardware assisted virtualization support)
XD (Execute Disable) (Intel); this must be enabled
NX (No Execute)(AMD); this must be enabled.
If the following options are present in the BIOS, disable them.
Disable Intel VT-d
Disable Trusted Execution
For more information, see this article: Technet: Hyper-V: How to Fix BIOS Errors Enabling Hyper-V
Make sure you have at least 4GB system memory and that it is not being consumed by other resource-intensive programs and processes.
Make sure you are running Windows 8 Professional or better (Windows Server 2008 is not supported). Windows Server 2012 is supported, but you must enable Desktop Experience.
You can inspect the Event Viewer to see if there are any Hypervisor errors. To do this, open Event Viewer (Start key+R, then type eventvwr ) and then select Windows Logs, System. Then filter the log by event source, setting the source to Hyper-V-Hypervisor. Check for errors to help identify root cause.
If your processor meets the minimum requirements but hypervisor is still failing, consider finding out if there is a BIOS upgrade available for your computer. If there is one, and you choose to upgrade, be sure to observe all precautions from the manufacturer when upgrading the BIOS (such as making sure the BIOS firmware upgrade is not interrupted by a power loss, which may permanently corrupt the BIOS).
Make sure you have at least 4GB system memory and that it is not being consumed by other resource-intensive programs and processes.
Remove/Disable third party drivers or software that may be interfering with virtual networking.
There are some known issues with some 3rd party products installed under Windows 8 such as networking drivers/protocols that are not fully compatible with the Hyper-V networking stack.
In general, it will be up to the developers of those products to update their software to be compatible with Windows 8 and Hyper-V.
The following products may require upgrading for Windows 8 compliance: VirtualBox, Virtual PC 7, VMWare, some VPN clients, software firewalls, some versions of the Cisco VPN clients, and other virtualization systems. Work with the developer of the questionable virtualization software to encourage them to upgrade the software to make it compatible with Windows 8 and Hyper-V.
As a workaround, you can disable all third party drivers and applications which may be interfering with the virtual network used by the Emulator to communicate with Visual Studio. These applications may include:
Antivirus applications (which hook into the network stack)
Network monitoring tools
Network logging tools
Other system monitoring software
Another possible workaround, short of uninstalling the product(s) in question (and requesting the product developer to release an updated version), is to take the following steps.
Start the Network Connections manager (from the Start screen, type View Network Connections and select this option to view the network connections.)
For the vEthernet (Internal Ethernet Port Windows Phone Emulator Internal Switch) adapter, choose Properties from the context menu.
The adapter properties are shown here.
For this adapter, the only items that should be selected under This connection uses the following items should be the following:
Client for Microsoft Networks
QoS Packet Scheduler
File and Printer Sharing for Microsoft Networks
Microsoft LLDP Protocol Driver
Link-Layer Topology Discovery Mapper I/O Driver
Link-Layer Topology Discovery Responder
Internet Protocol Version 6 (TCP/IPv6)
Internet Protocol Version 4 (TCP/IPv4)
Deselect any other items.
The downside to using this technique is that any time a new 3rd party product installs unsupported drivers, or any time the emulator is installed, these steps will need to be repeated.
After uninstalling third party products you may need to restore the Windows Phone Emulator Internal Switch. To do that:
Open Hyper V and go into the Virtual Switch Manager. Create a virtual switch named "Windows Phone Emulator Internal Switch" and set its connection type to Internal network.
Now launch the emulator. It should work.
Computer fails to boot after installing the Emulator
This problem can occur when the following conditions are true:
Your computer has a Gigabyte motherboard.
USB3 is enabled on the motherboard.
To solve this problem, disable USB3 in the BIOS settings of the motherboard and reboot the computer. Then check whether Gigabyte has released an update for your motherboard's BIOS.
Visual Studio gets stuck trying to deploy the app to the emulator or the emulator does not appear as a debug target in other IDEs
If the emulator is running, but it does not appear to be connected to ADB (Android Debug Bridge) or it does not appear in Android tools that make use of ADB (for example, Android Studio or Eclipse), you may need to adjust where the emulator looks for ADB. The emulator uses a registry key to identify the base location of your Android SDK, and looks for the \platform-tools\adb.exe file under that directory. To modify the Android SDK path used by the emulator:
Open Registry Editor by selecting Run from the Start buttons context menu, typing regedit in the dialog box, and choosing OK.
Navigate to HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Android SDK Tools in the folder tree on the left.
Modify the Path registry variable to match the path to your Android SDK.
Restart the emulator and you should now be able to see the emulator connected to ADB and associated Android tools.
Emulator stops responding because it couldn't set up the UDP port
You may experience this issue due to incompatibility with Xamarin Player. If the emulator appears to stop responding or if you see this error message, "The emulator is unable to connect to the device operating system: Couldn't set up the UDP port. Some functionality might be disabled", you may be experiencing this issue. Take the following steps.
Uninstall Xamarin Player.
Verify that virtual box has been removed (Xamarin Player runs on top of virtual box).
Go to device manager, select the option to show hidden devices, and then delete everything except the physical network cards.
You can try uninstalling/reinstalling Hyper-V after removing any non-physical network adapters.
Cannot attach debugger to a Xamarin project
If you are running Windows 10 with Intel Skylake processors, Xamarin apps might fail to run in the emulator or the Visual Studio debugger might not attach to them. This is due to an issue with Hyper-V and Skylake processors. Take the following steps as a workaround.
Open Hyper-V Manager and select the VM for the emulator profile that your are using.
Select Delete Saved State (lower right).
Choose Settings.
Expand the processor node and choose Compatibility.
Enable Migrate to a physical computer with a different processor version.
Restart the service (under Actions) and try again.
Emulator fails to run app that uses Google Play Services
The emulator does not ship with the libraries for Google Play Services. However, the emulator does support drag-and-drop installation of flashable zip files.
Drag and Drop of a file, APK, or flashable zip file does not work
The emulator uses ADB.exe to facilitate file transfer when you drag and drop a file onto the screen. If you encounter an error when you try to drag and drop a file, this probably indicates that the emulator is not connected to ADB.exe. To resolve, follow steps in Visual Studio gets stuck trying to deploy the app to the emulator or the emulator does not appear as a debug target in other IDEs.
Resolution of screenshot is incorrect
If you take a screenshot using the Screenshot tab in the Additional Tools window and the resulting image is of an unexpected size, you may need to adjust the zoom level of the screen before choosing Capture. The emulator takes screenshots at the resolution of the screen on your host PC monitor.
Emulator fails to render OpenGL content
The emulator renders OpenGL content using your host machine's GPU and uses the ANGLE project to convert these calls to and from DirectX. If your application renders correctly on a device but incorrectly on the emulator, it is likely that the device is mitigating an incorrect OpenGL call (for example, using shader variables that do not match).
Emulator does not respond to multi-touch gestures
In some cases, the emulator will start and not respond to multi-touch either through direct interaction from your touch-enabled display or using the Multi-Touch Tool on the emulator toolbar. If this is the case, choose the Rotate button on the emulator toolbar and attempt to use multi-touch again. If the issue persists, read the Emulator fails to render OpenGL content issue.
Support resources
If your host computer meets the system requirements and you encounter an issue not covered in this troubleshooting guide:
Ask a question on StackOverflow using the android-emulator and visual-studio tags.
Report an issue using the Send a Smile tool in Visual Studio or in the Emulator Manager.
В этом разделе содержатся сведения об устранении неполадок, которые могут возникать при использовании эмулятора Visual Studio для Android.
Когда эмулятор установлен, программа установки проверяет наличие необходимых компонентов для запуска программного обеспечения. Если необходимые компоненты не установлены, она отображает предупреждения, но он не требует их установки.
В этом разделе содержатся следующие подразделы.
Перед началом работы
Прежде чем приступить к устранению проблем, может оказаться полезным ознакомиться со следующими разделами:
Не удается запустить эмулятор
Не удается подключиться к сетевым пунктам назначения в домене или в корпоративной сети
Эмулятор Visual Studio для Android отображается в сети как отдельное устройство с собственным IP-адресом. Он не присоединен к домену Windows и не использует учетные данные домена или рабочей группы совместно с главным компьютером.
Если для сети требуется проверка подлинности домена или рабочей группы для базовой сети и подключения к Интернету, попросите ИТ-администратора сделать исключение. Такое исключение позволяет использовать компьютер разработчика в качестве граничного компьютера и принимать на нем подключения от сетевых устройств, не присоединенных к домену, например, от эмулятора.
Эмулятор Visual Studio для Android также использует свой собственный набор MAC-адресов. Если из эмулятора нет доступа к сети или ресурсам в Интернете, обратитесь к ИТ-администратору, чтобы авторизовать MAC-адреса эмулятора сети.
Просмотр MAC-адресов эмулятора
На панели инструментов эмулятора нажмите кнопку шеврона (>>), чтобы открыть окно «Дополнительные средства».
В этом окне перейдите на вкладку «Сеть».
На странице «Сеть» найдите физические адреса.
Не удается подключиться к сетевым пунктам назначения, если параметры сети необходимо настраивать вручную
Чтобы подключаться к сетевым пунктам назначения из эмулятора, сеть должна отвечать следующим требованиям:
DHCP. Эмулятору требуется DHCP, так как он настраивается сам как отдельное устройство в сети с собственным IP-адресом.
Автоматически настраиваемые параметры DNS и шлюза. Вручную настраивать параметры DNS и шлюза для эмулятора невозможно.
Если для сети требуется настроить параметры вручную, попросите своего ИТ-администратора уточнить способ включения подключения к сети для эмулятора.
Эмулятор запускается медленно, не запускается из-за истечения времени ожидания, или развертывание приложения завершается с ошибкой
Запуск эмулятора Visual Studio для Android с загрузочного виртуального жесткого диска. Такая конфигурация не поддерживается.
Неисправный жесткий диск. Рекомендуется запустить программу chkdsk.
Жесткий диск необходимо дефрагментировать. Рекомендуется выполнить дефрагментацию диска.
Жесткий диск почти полностью заполнен. Проверьте объем свободного места на диске.
Не хватает памяти из-за других работающих приложений. Сократите количество приложений, которые потребляют память, или увеличьте объем памяти.
В целом, любой фактор, который приводит к снижению производительности системы. Начните устранение неполадок с компонента, имеющего наименьший показатель в индексе производительности Windows, который можно найти на странице «Счетчики и средства производительности» на панели управления.
Не удается запустить эмулятор
Если эмулятор ранее работал, но теперь не работает, выполните следующие действия. Если эмулятор используется впервые, см. раздел Emulator fails to start (first use) перед выполнением следующих действий.
Удалите все прочие экземпляры Hyper-V эмулятора.
Закройте Visual Studio.
Откройте диспетчер и остановите все экземпляры Hyper-V эмулятора (виртуальные машины), которые уже работают и, возможно, находятся в поврежденном состоянии.
В диспетчере Hyper-V удалите все другие виртуальные машины эмулятора.
Убедитесь, что у вас есть системная память емкостью не менее 4 ГБ, и что она не используется другими ресурсоемкими приложениями и процессами (например, попробуйте закрыть окна браузера).
В диспетчере Hyper-V откройте диспетчер виртуальных коммутаторов и проверьте наличие двух сетевых коммутаторов. Убедитесь, один из них является внутренним, а второй — внешним.
Если настройка неверна и используется Windows 10, можно попробовать переустановить сетевые устройства с помощью команды netcfg-d (раздел 6).
Если эти шаги не решат проблему, см. раздел Emulator fails to start (first use) для получения сведений о программном обеспечении сторонних производителей, которое может мешать работе эмулятора.
Emulator fails to start (first use)
Если не удается запустить эмулятор, выполните следующие задачи, чтобы определить проблему и устранить ее.
Убедитесь, что соблюдены минимальные требования к оборудованию и применяются корректные параметры BIOS.
Для эмулятора и Windows 8 Hyper-V требуется 64-разрядный процессор с преобразованием адресов второго уровня (SLAT). Для Intel вам потребуется, в частности, процессор Core i3, i5 или i7 (или один из многих вариантов Xeon). Список микросхем AMD см. здесь.
Убедитесь, что ваш компьютер удовлетворяет требованиям к системе.
Убедитесь, что средство coreinfo сообщает, что компьютер поддерживает SLAT.
В области параметров BIOS компьютера убедитесь, что вся технология виртуализации включена. Производители оборудования могут использовать разное описание BIOS. Как правило, необходимо включить функции, связанные со следующими технологиями:
SLAT (преобразование адресов второго уровня)
EPT (таблицы Extended Page Tables) (Intel)
NPT (таблицы Nested Page Tables) (AMD)
RVI (Rapid Virtualization Indexing) (AMD)
VMX (сокращение компании Intel, указывающее на аппаратную поддержку виртуализации)
SVM (сокращение компании AMD, указывающее на аппаратную поддержку виртуализации)
XD (Execute Disable) (Intel); данный параметр необходимо включить
NX (No Execute)(AMD); данный параметр необходимо включить
Если в BIOS имеются следующие параметры, отключите их.
Отключить Intel VT-d
Отключить Trusted Execution
Дополнительные сведения см. в этой статье: Technet: Hyper-V: Как устранить ошибки BIOS при включении Hyper-V
Убедитесь, что у вас есть системная память емкостью не менее 4 ГБ, и что она не используется другими ресурсоемкими приложениями и процессами.
Убедитесь, что на вашем компьютере установлена ОС Windows 8 Профессиональная или более высокая версия (Windows Server 2008 не поддерживается). Windows Server 2012 поддерживается, но необходимо включить возможности рабочего стола.
Чтобы определить наличие ошибок гипервизора, воспользуйтесь средством просмотра событий. Для этого откройте средство просмотра событий (нажмите клавиши ПУСК+R, а затем введите eventvwr ) и выберите Журналы Windows, Система. Затем выполните фильтрацию журнала по источнику события. Для этого для источника установите значение Hyper-V-Hypervisor. Проверьте наличие ошибок, чтобы попытаться установить основную причину.
Если ваш процессор удовлетворяет минимальным требованиям, но гипервизор по-прежнему не работает, выясните, имеется ли обновление BIOS для вашего компьютера. Если такое обновление существует, и вы решили выполнить процедуру обновления, обязательно соблюдайте все меры предосторожности, предписанные производителем для обновления BIOS (например, необходимо исключить перебои электропитания в процессе обновления встроенного ПО BIOS, так как это может привести к повреждению BIOS).
Убедитесь, что у вас есть системная память емкостью не менее 4 ГБ, и что она не используется другими ресурсоемкими приложениями и процессами.
Удалите или отключите драйверы или программное обеспечение сторонних производителей, которое может мешать работе виртуальной сети.
Применительно к ряду продуктов сторонних производителей, установленных в ОС Windows 8, существуют некоторые известные проблемы, например, с сетевыми драйверами и протоколами, которые не полностью совместимы с сетевым стеком Hyper-V.
Как правило, именно разработчики этих продуктов должны обновить свое программное обеспечение, чтобы обеспечить совместимость с Windows 8 и Hyper-V.
Обновление для обеспечения совместимости с Windows 8 может потребоваться для следующих продуктов: VirtualBox, Virtual PC 7, VMWare, некоторых клиентов VPN, программных брандмауэров, некоторых версий клиентов Cisco VPN и других систем виртуализации. Поддерживайте связь с разработчиками нестабильно работающего программного обеспечения виртуализации. Убеждайте их обновлять программное обеспечение, чтобы оно было полностью совместимым с Windows 8 и Hyper-V.
В качестве решения можно отключить все драйверы и приложения сторонних производителей, которые могут мешать работе виртуальной сети, используемой эмулятором для взаимодействия с Visual Studio. К таким приложениям могут относиться:
Антивирусные приложения (которые взаимодействуют с сетевым стеком)
Инструменты мониторинга сети
Инструменты ведения сетевых журналов
Другое программное обеспечение мониторинга системы
Данную проблему можно попытаться решить по-другому, не прибегая к удалению конкретного продукта (и не предлагая разработчику выпустить обновленную версию), если выполнить следующие действия.
Запустите диспетчер сетевых подключений (на начальном экране введите View Network Connections и выберите этот параметр, чтобы просмотреть сетевые подключения).
Для адаптера vEthernet (Внутренний порт Ethernet — эмулятор Windows Phone, внутренний коммутатор) выберите Свойства в контекстном меню.
Здесь показаны свойства адаптера.
Для этого адаптера в списке Это подключение использует следующие компоненты необходимо выбрать только следующие элементы:
Клиент для сетей Microsoft
Планировщик пакетов QoS
Служба доступа к файлам и принтерам сетей Microsoft
Драйвер протокола LLDP (Майкрософт)
Драйвер в/в обнаружения топологии канального уровня
Отвечающее устройство обнаружения топологии канального уровня
Протокол Интернета версии 6 (TCP/IPv6)
Протокол Интернета версии 4 (TCP/IPv4)
Снимите флажки у всех других элементов.
Недостаток данного метода заключается в том, что указанную выше процедуру нужно будет повторять каждый раз, когда новый продукт стороннего производителя установит неподдерживаемые драйверы, или каждый раз, когда будет установлен эмулятор.
После удаления продуктов сторонних производителей может потребоваться восстановление внутреннего коммутатора эмулятора Windows Phone. Для этого следует выполнить следующие действия:
Откройте Hyper-V и перейдите в диспетчер виртуальных коммутаторов. Создайте виртуальный коммутатор с именем «Внутренний коммутатор эмулятора Windows Phone» и для типа соединения установите значение Внутренняя сеть.
Теперь запустите эмулятор. Он должен работать.
Компьютер не загружается после установки эмулятора
Эта проблема может возникнуть при следующих условиях:
На компьютере установлена системная плата Gigabyte.
На этой плате включен USB3.
Чтобы решить эту проблему, отключите USB3 в настройках BIOS для системной платы и перезагрузите компьютер. Затем убедитесь, что компания Gigabyte выпустила обновление BIOS для своей системной платы.
Visual Studio зависает при попытке развернуть приложение в эмуляторе, или эмулятор не отображается как целевой объект отладки в других IDE
Если эмулятор работает, но не подключен к ADB (мост отладки Android) или не виден в средствах Android, которые используют ADB (например, Android Studio или Eclipse), возможно, вам потребуется изменить место поиска ADB эмулятором. Эмулятор использует раздел реестра для определения базового расположения пакета SDK для Android и выполняет поиск файла \platform-tools\adb.exe в этом каталоге. Чтобы изменить путь к пакету SDK для Android, используемому эмулятором, выполните следующие действия:
Откройте редактор реестра: выберите Запуск в контекстном меню кнопки Пуск, введите regedit в диалоговом окне и нажмите кнопку ОК.
Перейдите в раздел HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Android SDK Tools в дереве папок слева.
Измените значение переменной реестра Путь (оно должно соответствовать пути к пакету SDK для Android).
Перезапустите эмулятор. Теперь эмулятор должен быть подключен к ADB и связанным средствам Android.
Эмулятор перестает отвечать, так как ему не удалось настроить UDP-порт
Удалите Xamarin Player.
Убедитесь в удалении виртуального окна (Xamarin Player работает на базе виртуального окна).
Перейдите в диспетчер устройств, выберите параметр отображения скрытых устройств и удалите все, кроме физических сетевых карт.
Можно попробовать удалить и повторно установить Hyper-V после удаления любого нефизического сетевого адаптера.
Не удается подключить отладчик к проекту Xamarin
При запуске Windows 10 на процессорах Intel Skylake приложений Xamarin могут завершаться со сбоем в эмуляторе либо к ним может не подключаться отладчик Visual Studio. Это вызвано проблемой, связанной с Hyper-V и процессорами Skylake. Чтобы избежать этого, выполните указанные ниже действия.
Откройте диспетчер Hyper-V и выберите виртуальную машину для профиля эмулятора, который вы используете.
Выберите Удаление сохраненного состояния (внизу справа).
Выберите Параметры.
Разверните узел процессора и выберите Совместимость.
Включите параметр Выполнить перенос на физический компьютер с другой версией процессора.
Перезапустите службу (в разделе Действия) и повторите попытку.
Эмулятор не может запустить приложение, которое использует Сервисы Google Play
Эмулятор не поставляется вместе с библиотеками для служб Google Play. Тем не менее, эмулятор поддерживает установку ZIP-файлов с поддержкой флэш-памяти в режиме перетаскивания.
Перетаскивание файла, APK или ZIP-файла с поддержкой флэш-памяти не работает
Эмулятор использует файл ADB.exe для упрощения передачи файла при его перетаскивании на экран. При попытке перетащить файл возникает ошибка. Это указывает, что эмулятор, возможно, не подключен к ADB.exe. Чтобы решить, выполните действия в Visual Studio зависает при попытке развернуть приложение в эмуляторе, или эмулятор не отображается как целевой объект отладки в других IDE.
Неверное разрешение снимка экрана
Если вы делаете снимок экрана с помощью вкладки «Экран» в окне Дополнительные средства , но полученное изображение имеет непредвиденный размер, возможно, необходимо изменить уровень масштаба экрана перед нажатием кнопки Захват. Эмулятор получает снимки экрана с разрешением экрана, установленным на мониторе главного компьютера.
Эмулятор не может преобразовать контент OpenGL для просмотра
Эмулятор отображает контент OpenGL с помощью графического процессора главного компьютера и использует проект ANGLE для преобразования этих вызовов в DirectX и из него. Если приложение правильно отображается на устройстве, но неправильно на эмуляторе, то возможная проблема заключается в том, что устройство подавляет некорректный вызов OpenGL (например, с помощью переменных шейдера, которые не совпадают друг с другом).
Эмулятор не реагирует на мультисенсорные жесты
В некоторых случаях эмулятор может запускаться, но не отвечать на мультисенсорные жесты, выполняемые либо непосредственно на сенсорном экране, либо с помощью мультисенсорного средства на панели инструментов эмулятора. Если это так, нажмите кнопку Поворот на панели инструментов эмулятора и попытайтесь снова использовать мультисенсорное средство. Если проблема сохранится, читайте проблему Эмулятор не может преобразовать контент OpenGL для просмотра .
Ресурсы поддержки
Если главный компьютер отвечает требованиям к системе и возникают проблемы, не описанные в этом руководстве по устранению неполадок:
Задать вопрос об использовании StackOverflow с помощью тегов android-emulator и visual-studio.
сообщите о проблеме с помощью средства отправки одобрения в Visual Studio или в диспетчере эмуляторов.
I create a blank cordova application in visual studio 2015 and start debugging with the visual studio android emulators (first with the lollipop and then kitkat). XDE starts and the screen displays OS is starting. . It stays like that for quite a while until it displays
The emulator is unable to connect to the device operating system; The device did not response to the connect request. Some functionalities might be disabled'
After closing the dialog, it stays there forever until I kill the emulator. Killing the emulator triggers an error from visual studio.
Could not start emulated device 'VS Emulator Lollipop Phone'.
When I open hyper-v, I see the vm in the list and shown as running. When I connect, I see the console screen as below
10 Answers 10
I know this issue has been around for a while now, but I have just found a new solution for people who may still encounter this issue.
I had the same issue (stuck on "OS Is Starting") for API v 21 & 22. API v23 images would start, but could not debug - the app would crash as soon as it launched.
The following fixed the issue:
- Shut down the emulator
- Open Hyper-V manager
- Go to the settings for the Android Image
- Expand the "Processor" configuration node
- Go to the "Compatibility" node
- Check the "Migrate to a physical computer with a different processor version" option
Apparently it has something to do with newer Processor architectures being incompatible with the Android images or something like that - don't really care, as long as it works :)
This was exactly my issue. API 21 & 22 images would start but VS could not deploy app to it. Turning on that option worked beautifully. Thanks!
This also resolved my issues with API 21, 22, and 23 devices. 21&22 wouldn't get past "OS Is Starting" and on 23, the settings app crashed when I pressed "About Phone" to try to turn on Developer Settings. If anyone else also ran into this is doing React Native stuff, you'll also need to run adb reverse tcp:8081 tcp:8081 .
This solution worked for me as well! Came right up. What I would suggest is edit your answer to include a screen capture or two as the only difficulty I had with your answer is finding the exact location to check that checkbox.
I was running into the same issue. I did try to disable OpenGL by deleting: GuestDisplayProvider = "VsEmulator.OpenGLGuestDisplay" in xdesku.xml, as suggested in other answers.
At first, the virtual machine would boot up (you could connect to it from Hyper-V manager), but the emulator window itself would not connect to the machine (stuck on "OS is starting", then failing after a looooong while with the following message: "The emulator is unable to connect to the device operating system: Couldn't auto-detect the guest system IP address. Some functionality might be disabled.")
However, the emulator wasn't working properly (scaling issues, no Home, Back, etc. buttons) until I put back the line "VsEmulator.OpenGLGuestDisplay" and after removing my profiles and rebooting a number of times.
To sum up, if you are encountering the same issue on an Hyper-V enabled computer, you may want to try the --over conscious-- following steps:
- Ideally, uninstall any other Virtualisation software such as VMWare, Virtual Box and VPN clients such as Cisco VPN (if you cannot do that, please be vigilant at step 13)
- Reboot
- In the "Visual Studio Emulator for Android" dialog, delete all installed device profiles
- Remove All Hyper-V virtual switches - go to Hyper-V > Virtual switch manager > Remove all virtual switches
- Run XdeCleanup.exe (usually in "C:\Program Files (x86)\Microsoft XDE\10.0.10240.0")
- Also remove any extra virtual network adapters left in "Control Panel > Network and Internet > Network Connections" (after following the previous steps, you should normally be left with only physical adapters)
- Make sure Network Sharing is disabled on all network adapters (right click, Properties, Sharing, untick "Allow other network users to connect through this computer's Internet connection")
- If ever you deleted the line GuestDisplayProvider="VsEmulator.OpenGLGuestDisplay" in xdesku.xml (usually in "C:\Program Files (x86)\Microsoft XDE\10.0.10240.0\SKUs\Android"), NOW IS A GOOD TIME TO PUT IN BACK.
- Reboot
- You may want to try to repair the emulators: go to Programs and Features > Microsoft Visual Studio Emulator for Android > Change and hit "Repair" (although I have to say this always fails for me)
- Reboot
- Open the Visual Studio Emulator for Android, and install then run one of the profiles (eg: 7'' KitKat (4.4) XHDPI Tablet -- Similar to Asus Google Nexus 7)
- It may already work, but if not you should make sure that your network adapters are setup properly. Stop your emulator, then Go to Control Panel > Network and Internet > Network Connections, and right click the vEthernet adapters, then Properties and make sure you only have the following boxes ticked in the Networking list (as explained in Interference from other virtualization or networking software and drivers: Client for Microsoft Networks, QoS Packet Scheduler, File and Printer Sharing for Microsoft Networks, Microsoft LLDP Protocol Driver, Link-Layer Topology Discovery Mapper I/O Driver, Link-Layer Topology Discovery Responder, Internet Protocol Version 6 (TCP/IPv6), Internet Protocol Version 4 (TCP/IPv4)
- Reboot
- Try to start the emulator again in "Visual Studio Emulator for Android"
- If it still doesn't work, try to delete and recreate the profiles, and loads of reboots.
There are probably some redundants steps here, but I think it covers everything you should try (the key seems to be making sure that the network adapters are setup properly). If I've missing some things or if you think some steps are useless, please comment.
Using the Hello World xamarin example in Visual Studio - I'm unable to start the Android Emulator.
When I click on the Run button in the Android Device Manager - the error appears immediately (See attached)
Error-AndroidDeviceManager (Emulator including Google Play/Google API)
Device error: WARNING: unexpected '-prop' value ('monodroid.avdname=pixel_2_pie_9_0_-_api_28'), only 'qemu.' properties are supported WARNING: unexpected '-prop' value ('emu.uuid=4b63b139-cc77-4b66-9200-0d25f8fc545e'), only 'qemu.' properties are supported
Same Error when Emulator is not using Google Play/Google API
Same Error when Emulator is not using Google Play/Google API
Windows Specifications Edition: Windows 10 Pro Version: 1909
Processor AMD Ryzen 9
Task Manager: Performance: Virtualization is Enabled
Visual Studio 2019
Windows Features On/Off (see attached - shows Hyper V / Virtualization enabled as per documentation): WindowsFeatures
I tried this way too - adding the Virtual Machine Platform - same error
Android SDK Settings
Android SDK Version:
Could the issue be related to the Android SDK Tools - only showing Android SDK Command-line Tools versions 1.0 to 2.1? Could the issue be related to Android Repository perhaps missing on the bottom right hand side?
I've now also included the Android SDK Repository under the tools - but this is still not coming through:
Читайте также: