- Эмулятор Android Visual Studio не запускает приложение
- 7 ответов
- 1. Ошибка [Critical] XDE Exit Code: InvalidArguments (3).
- 2. Ошибка [Critical] XDE Exit Code: CouldntStartVm (10)
- 3. Если виртуальное устройство запустилось, но Android Studio его не видит
- Решение проблем с запуском Visual Studio Emulators for Android
- 1. Ошибка отключенной виртуализации
- 2. Ошибка нехватки памяти
- Эмулятор андроидов Visual Studio не запустится полностью
Эмулятор Android Visual Studio не запускает приложение
Недавно я занялся разработкой Xamarin. У меня большой опыт создания приложений для iOS с помощью Xcode, и со стороны iOS все было очень просто. Сейчас пытаюсь внедрить Android. Я скачал пример Hello World, чтобы сориентироваться. Когда я запускаю его, у меня нет проблем с отображением симулятора ( MonoForAndroid_API_10 и MonoForAndroid_API_12 ), но реальное приложение не запускается и нигде на симуляторе не отображается. По сути, всякий раз, когда я использую run или run with в Xamarin на Android, он вызывает полностью работающий, хотя и пустой симулятор.
Как заставить мое приложение работать на эмуляторе?
7 ответов
Как и другие комментаторы, это, скорее всего, просто симптом медленного эмулятора на вашем компьютере. Я занимаюсь разработкой Xamarin-Android на своей машине OSX 2010 года в автономном режиме с 8 ГБ ОЗУ, и это медленно-медленно-медленно, но можно использовать. Попробуйте найти улучшения скорости Intel x86 (ищите HAXM ), и вы обнаружите, что эмулятор будет намного быстрее.
И да, возьмите настоящий телефон и подключите его к компьютеру: всегда намного быстрее, чем эмуляция.
редактировать позже Получите Genymotion для Mac OSX или для ПК / Windows или ПК / Linux. Это намного быстрее, чем другие эмуляторы. С тех пор я обнаружил, что это так же или быстрее, чем запуск приложения на моем подключенном телефоне Android. Это, безусловно, проще, поскольку не нужно подключать устройство к одному из моих USB-портов, и это позволяет мне кодировать и тестировать в поезде. http://www.genymotion.com/
Не знаю, была ли моя проблема такой же, но, наконец, это устранение неполадок помогло мне запустить эмулятор https://msdn.microsoft.com/en-us/library/mt228282.aspx#ADB. Мне не хватало ключа Android SDK Tools со строковым значением Path в реестре Computer \ HKEY_LOCAL_MACHINE \ SOFTWARE \ WOW6432Node
Я создал это вручную, и это сработало.
ОБНОВЛЕНИЕ
До того, как у меня возникла проблема с запущенным эмулятором, я не мог видеть его в Visual Studio. Причина в том, что я установил эмулятор VS Android через автономную установку, а не через VS Installer. Его тоже нужно было установить там.
У меня была аналогичная проблема, а затем я удалил существующий симулятор устройства и переустановил его снова, и он начал работать.
Поскольку я использую другой SDK, в моем случае
Перейдите в Инструменты> Параметры> Xamarin и установите путь к Android SDK.
Иногда Visual Studio изменяет эту конфигурацию;
Обновление 2020: я следил за комментарием, получившим наибольшее количество голосов, однако с недавним обновлением Visual Studio 2019 шаги немного изменились. Вот что раньше работало:
«Не знаю, была ли моя проблема такой же, но, наконец, это устранение неполадок помогло мне запустить эмулятор https://msdn.microsoft.com/en-us/library/mt228282.aspx#ADB. Мне не хватало ключевых инструментов Android SDK со строковым значением Path в реестре Компьютер \ HKEY_LOCAL_MACHINE \ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ \ WOW6432Node Я создал его вручную, и он сработал ».
ЧТО ДЕЛАТЬ ВМЕСТО
Ничего такого. Не связывайся с тропой.
«До того, как у меня возникла проблема с запущенным эмулятором, я не мог видеть его в Visual Studio. Причина заключалась в том, что я установил VS Android Emulator через автономную установку, а не через VS Installer. Его также нужно было установить там. . «
ЧТО ДЕЛАТЬ ВМЕСТО
А. Перейдите в Инструменты, расположенные в верхней части окна VS, выберите Инструменты и функции, перейдите в Отдельные компоненты, используя инструмент поиска во всплывающем окне, выполните поиск «эмулятор», как только вы получите результат, убедитесь, что оба Эмулятора Google Android ( Уровень API 25) (локальная установка) и Intel Hardware Accelerated Execution Manager (HAXM) (локальная установка) проверяются.
Б. Закройте решение (я) и перезапустите VS, затем снова откройте решение (я).
C. Чтобы развернуть приложение в эмуляторе, нажмите кнопку «Пуск», чтобы развернуть эмулятор, щелкните левой кнопкой мыши проект Android и нажмите «Развернуть». Вы должны увидеть свое приложение в меню приложения эмулятора. Изображение обновленных инструкций
Иногда вы закрываете эмулятор Android, но не POWEROFF эмулятор. эта проблема возникает, когда эмулятор завершает работу некорректно.
- Сначала запустите свой эмулятор
- Затем перезапустите эмулятор с помощью параметра pressing down the power button and select restart в эмуляторе Android.
В основном вам нужно включить эти две функции Windows с панели управления (включить или выключить функции Windows):
- Hyper-V.
- Платформа гипервизора Windows.
Затем из Visual Studio перейдите в: Инструменты >> Android >> Диспетчер SDK для Android >> Инструменты >> убедитесь, что версия «Android emulator» — 27.0.1 или выше, в противном случае вы найдете на том же экране кнопку ниже, чтобы обновите его.
Я сделал это в 64-разрядной версии Windows 10 с VS 2017 Community 15.9.5
Источник
1. Ошибка [Critical] XDE Exit Code: InvalidArguments (3).
Возможно, проблема в вашем случае снимется с отключением OpenGL. Это выполняется редактированием файла xdesku.xml.
Необходимо удалить строчку GuestDisplayProvider=»VsEmulator.OpenGLGuestDisplay» в файле Program Files (или Program Files (x86), если 64-битная система)\Microsoft XDE\10.0.0.0\SKUs\Android\xdesku.xml
2. Ошибка [Critical] XDE Exit Code: CouldntStartVm (10)
Здесь рекомендуется удалить лишние приложения, ибо эмулятору не хватает памяти. Мне этот шаг не помог. В итоге проблема решилась следующим образом:
1. Запускаем в командной строке редактор реестра regedit.exe.
2. Находим подраздел реестра:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Virtualization
3. Щелкаем правой кнопкой мыши папку «Virtualization», выбираем «Создать», а затем «Параметр DWORD (32 бита)».
4. Вводим наименование MemoryReserve, нажимаем Enter.
5. Дважды щелкаем на созданный MemoryReserve, вводим 2048 в поле «Значение», при этом выбрав параметр «Десятичный» и нажимаем «ОК».
6. Закрываем редактор реестра.
В системах, у которых установлено менее 8 ГБ ОЗУ, рекомендуется значение MemoryReserve 2048 (2 ГБ). Если поставить значение 0, то этот параметр будет игнорироваться.
Чтобы этот параметр реестра вступил в силу, необходимо перезагрузить компьютер.
3. Если виртуальное устройство запустилось, но Android Studio его не видит
1. Запускаем в командной строке редактор реестра regedit.exe.
2. Находим подраздел реестра:
HKEY_LOCAL_MACHINE/SOFTWARE/Wow6432Node
3. Создаем здесь новый раздел Android SDK Tools. Внутри раздела создаем новый параметр Path тип «Строковый», в значение которого сохраняем ваш путь к Android SDK.
4. Перезапускаем виртуальное устройство. Теперь Android Studio должна его обнаружить и показать при отладке.
Источник
Решение проблем с запуском Visual Studio Emulators for Android
Прежде, чем воспользоваться решениями из этой статьи следует учесть, что это не полноценные решения, так как эмуляторы Android в составе Visual Studio — это довольно глючные ПО и баги могут быть совсем иного характера, начиная от проблем с виртуализацей вашего ПК и кончая с глюками и конфликтами самих эмуляторов.
1. Ошибка отключенной виртуализации
Первая проблема, которая может возникнуть, это проблема, связанная с включением виртуализации в BIOS с ошибкой запуска:
Чтобы исправить эту ошибку необходимо удостовериться, что процессор поддерживает аппаратную виртуализацию и далее запустить командную строку с правами администратора. Запустив необходимо выполнить код включения аппаратной виртуализации:
И перезапускаем систему Windows и пробуем.
2. Ошибка нехватки памяти
Данная ошибка связана с нехваткой оперативной памяти и сопровождается таким диалогом
Для решения переходим по данной статье, где говорится, что необходимо редактировать параметр MemoryReserve ветки реестра на элементе HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Virtualization . Т.е. для начала запускаем редактор реестра командой Win + R, введя команду regedit
Далее находим нужную ветку
По умолчанию этот параметр равен 2048 МБ, поэтому уменьшаем данный параметр до такого, чтобы эмулятор мог удачно запускаться и можно было в нем работать.
Источник
Эмулятор андроидов Visual Studio не запустится полностью
Я создаю пустое приложение cordova в visual studio 2015 и начинаю отладку с помощью визуальных анимированных эмуляторов Android (сначала с леденцом, а затем с kitkat). Запускается XDE, и на экране отображается, что OS is starting. запускается OS is starting. Он так долго сохраняется, пока не отобразится
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’
После закрытия диалога он остается там навсегда, пока я не убью эмулятор. Убивание эмулятора вызывает ошибку из визуальной студии.
Could not start emulated device ‘VS Emulator Lollipop Phone’.
Когда я открываю гипер-v, я вижу vm в списке и отображается как работающий. Когда я подключаюсь, я вижу экран консоли ниже
Я знаю, что эта проблема существует уже некоторое время, но я только что нашел новое решение для людей, которые все еще могут столкнуться с этой проблемой …
У меня была та же проблема (застряли на «OS Is Starting») для API v 21 и 22. Начались изображения API v23, но не удалось отладить – приложение сразу же сработает, как только оно запустится.
- Выключить эмулятор
- Открыть диспетчер Hyper-V
- Перейдите в настройки для Android-изображения
- Разверните узел конфигурации «Процессор»
- Перейдите на узел «Совместимость»
- Проверьте опцию «Перенести на физический компьютер с другой версией процессора»
По-видимому, это связано с тем, что новые архитектуры процессоров несовместимы с изображениями Android или что-то в этом роде – на самом деле все равно, пока это работает 🙂
Я столкнулся с тем же вопросом. Я попытался отключить OpenGL, удалив: GuestDisplayProvider = «VsEmulator.OpenGLGuestDisplay» в xdesku.xml, как это предложено в других ответах.
Сначала виртуальная машина загрузилась (вы могли бы подключиться к ней из диспетчера Hyper-V), но сам экран эмулятора не подключался к машине (застрял на «ОС запускает», а затем проваливается после looooong, а с Следующее сообщение: «Эмулятор не может подключиться к операционной системе устройства: не удалось автоматически определить IP-адрес гостевой системы. Некоторые функции могут быть отключены».)
Этот ответ https://stackoverflow.com/a/31698124/1010492 и что один https://stackoverflow.com/a/14402740/1010492 помог мне решить проблему подключения, и я смог отобразить виртуальную машину внутри Эмулятор окна.
Тем не менее, эмулятор работал неправильно (масштабирование проблем, никаких кнопок «Домой», «Назад» и т. Д.), Пока я не вернул строку «VsEmulator.OpenGLGuestDisplay» и после удаления моих профилей и перезагрузки несколько раз.
Подводя итог, если вы столкнулись с одной и той же проблемой на компьютере с поддержкой Hyper-V, вы можете попробовать использовать «-верение» – следующие шаги:
- В идеале удалите любое другое программное обеспечение Virtualisation, такое как VMWare, Virtual Box и VPN-клиенты, такие как Cisco VPN (если вы не можете этого сделать, будьте бдительны на шаге 13)
- перезагружать
- В диалоговом окне «Visual Studio Emulator for Android» удалите все установленные профили устройств
- Удалите все виртуальные коммутаторы Hyper-V – перейдите в Hyper-V> Диспетчер виртуальных коммутаторов> Удалите все виртуальные коммутаторы
- Запустите XdeCleanup.exe (обычно в «C: \ Program Files (x86) \ Microsoft XDE \ 10.0.10240.0»)
- Также удалите все дополнительные виртуальные сетевые адаптеры, оставшиеся в «Панели управления> Сеть и Интернет> Сетевые подключения» (после выполнения предыдущих шагов обычно следует оставить только физические адаптеры)
- Убедитесь, что общий доступ к сети отключен на всех сетевых адаптерах (щелкните правой кнопкой мыши, «Свойства», «Разделить», «Отключить». Разрешить другим пользователям сети подключаться через интернет-соединение этого компьютера).
- Если вы удалили строку « GuestDisplayProvider=»VsEmulator.OpenGLGuestDisplay» в xdesku.xml (обычно в« C: \ Program Files (x86) \ Microsoft XDE \ 10.0.10240.0 \ SKUs \ Android »), ТЕПЕРЬ – ХОРОШЕЕ ВРЕМЯ НА ПУТИ ВЕРНУТЬСЯ.
- перезагружать
- Вы можете попробовать восстановить эмуляторы: перейдите в раздел «Программы и функции»> «Microsoft Visual Studio Emulator для Android»> «Изменить» и «Восстановить» (хотя я должен сказать, что это всегда терпит неудачу для меня)
- перезагружать
- Откройте Visual Studio Emulator для Android и установите затем запустить один из профилей (например: 7 » KitKat (4.4) XHDPI Tablet – аналогично Asus Google Nexus 7)
- Возможно, он уже работает, но если нет, убедитесь, что сетевые адаптеры настроены правильно. Остановите свой эмулятор, затем перейдите в Панель управления> Сеть и Интернет> Сетевые подключения и щелкните правой кнопкой мыши на адаптерах vEthernet, затем выберите «Свойства» и убедитесь, что в списке «Сеть» отмечены только следующие поля (как описано в разделе « Помехи от другой виртуализации или сети» Программное обеспечение и драйверы : клиент для сетей Microsoft, планировщик пакетов QoS, общий доступ к файлам и принтерам для сетей Microsoft, драйвер протокола Microsoft LLDP, драйвер ввода-вывода топологии топологий Link-Layer, ответчик обнаружения топологии Link-Layer, протокол интернет-версии 6 (TCP / IPv6), Протокол Интернета версии 4 (TCP / IPv4)
- перезагружать
- Попробуйте снова запустить эмулятор в «Visual Studio Emulator для Android»
- Если он по-прежнему не работает, попробуйте удалить и воссоздать профили, а также загружать перезагрузки …
Вероятно, здесь есть несколько этапов избыточности, но я думаю, что он охватывает все, что вы должны попробовать (ключ, похоже, требует правильной настройки сетевых адаптеров). Если я пропустил некоторые вещи или, если вы считаете, что некоторые шаги бесполезны, прокомментируйте.
После многих поисков я получил эту работу. Надеюсь это поможет. Я нашел его в комментариях к статье MSDN для Android Emulator с Visual Studio 2015
Новые изображения могут работать, если вы отключите OpenGL, перейдя в Program Files (или Program Files x86, если вы находитесь на 64-разрядной машине) \ Microsoft XDE \ 10.0.0.0 \ SKUs \ Android \ xdesku.xml и удалите эту строку: GuestDisplayProvider = «VsEmulator.OpenGLGuestDisplay». Однако без включения OpenGL вы не сможете воспользоваться многими новыми функциями
В моей системе я снова запустил ее после включения отключенного vEthernet (внутреннего внутреннего Ethernet-адаптера для внутреннего телефона Ethernet-порта). Мне не пришлось перезагружаться.
Я прошел через шаги в ответе @Gyum Fox и до сих пор не радовался для меня.
Хотя Visual Studio Emulator для Android создает первый экземпляр эмулятора, также создается несколько виртуальных сетевых коммутаторов. Для ноутбука обычно создаются три экземпляра vEthernet; Один для проводной локальной сети, один для Wi-Fi и другой внутренний виртуальный коммутатор для гостевых подключений.
В моем случае vEthernet для проводной локальной сети был успешно создан, а затем процесс виртуализации Visual Studio для Android зависел. Это можно наблюдать из диспетчера Hyper-V и действия Virtual Switch Manager .
Используя Virtual Switch Manager, я успешно создал отсутствующий виртуальный коммутатор Wi-Fi с этими шагами. Ну, в конечном счете это сработало. Читай дальше.
- В списке « Виртуальные коммутаторы» выберите « Новый виртуальный сетевой коммутатор» …
- В разделе Какой тип виртуального коммутатора вы хотите создать? , Выберите « Внешний» .
- В раскрывающемся меню « Внешняя сеть» выберите адаптер Wi-Fi.
- Нажмите кнопку « Создать виртуальный коммутатор» .
- Измените имя: в соответствии с именем вашего адаптера Wi-Fi.
- Нажмите кнопку « Применить» .
В моем случае, хотя после нажатия « Применить» сообщение об ошибке указывало, что адаптер Wi-Fi был подключен. Хммм.
Я запустил апплет панели управления View Network Connections, и адаптер Wi-Fi не показал, что он был соединен с мостом. (Когда существует сетевой мост, в столбце « Состояние» есть слово Bridged .) Я подозреваю, что где-то в реестре скрываются пылевые цифровые биты.
Вот что я понял для меня.
- Щелкните правой кнопкой мыши устройство Wi-Fi.
- Выберите « Добавить в мост» .
- Щелкните правой кнопкой мыши на устройстве Wi-Fi, еще раз.
- Выберите « Удалить из моста» .
Теперь вернемся к шагам, чтобы создать виртуальный коммутатор для сети Wi-Fi. Эти шаги должны быть успешно завершены.
И теперь вы можете вернуться к созданию эмуляторов Android, которые вы хотите.
Одна последняя мысль … Если вы не видите каких-либо виртуальных коммутаторов, я подозреваю, что это может означать, что проводная локальная сеть может иметь пыльные цифровые биты, подвешивающие вас. В этом случае я бы попробовал трюк add-and-remove-from-bridge на проводном адаптере LAN, чтобы убедиться, что это ясно для вас.
И теперь я полагаю, что достаточно просто сделать трюк add-and-remove-from-bridge на сетевом адаптере без создания виртуального коммутатора. Для меня создание виртуального коммутатора было доказательством того, что проблема была исправлена. YMMV 😉
Я обнаружил, что моя проблема связана с брандмауэром Windows с некоторыми политиками предприятия, которые моя компания применяла ко всем компьютерам. Как только я остановил службу брандмауэра Windows, он работал нормально.
У меня также была эта проблема, и это было не только для эмуляторов Android, но и для всех эмуляторов телефонов Windows.
Это то, что я сделал, чтобы решить проблему
- Удалите Genymotion и Virtual Box (у меня было это в моей системе, и это не решило проблему)
- Удалены все виртуальные адаптеры. Это сложная часть. Ни один из адаптеров не смог удалить из виртуального менеджера Hyper-V. Мне пришлось использовать powershell и запустить remove-vmswitch -Name «Имя V-адаптера» -force. Кроме того, из этого я не смог удалить все адаптеры, и я нашел эту ссылку « https://social.technet.microsoft. Com / Форумы / windowsserver / en-US / e49df568-4f4c-47b7-b30c-952d1e26ca58 / cant-remove-failed-virtual-switch-from-hypervs-virtual-switch-manager? Forum = winserverhyperv «и удалены все виртуальные адаптеры
- Перезагрузите компьютер
- После этого в виртуальном диспетчере Hyper-V не было никаких v-адаптеров
Запустите XdeCleanup.exe (на всякий случай)
Кроме того, я отключил брандмауэр от моего вируса
После этого я смог запустить эмулятор из «Visual Studio Emulators for Android»,
Я добавляю отдельный ответ, хотя прозрение, предоставленное Gyum Fox, предоставило ключи, которые мне нужны, чтобы попробовать другие вещи …
[ПРИМЕЧАНИЕ. В последний раз, когда я мог использовать эмуляторы (
3 недели назад), у меня была отключена беспроводная связь и я использовал проводное соединение на своем ноутбуке Dev. У меня закончилось свободное место на моем коммутаторе, поэтому он снова включил беспроводную сеть в качестве единственного варианта подключения. Это может быть совершенно случайно, но читайте дальше, и я позволю вам решить.]
После безуспешных шагов Gyum я решил отключить беспроводную сеть и попытаться запустить эмулятор.
Разве вы не знали бы это … это сработало без проблем! 8->
Как только я запустил эмулятор, я снова включил беспроводную сеть, и эмулятор взял соединение.
Я не сетевой парень, поэтому я не собираюсь пытаться понять. Это небольшая PITA, но эй … если она работает . ; ->
На моей машине я мог запустить эмулятор, но при попытке развертывания и отладки у меня возникла ошибка OpenGL. Я понял, что мои проблемы начались после того, как я установил Docker. По прихоти я решил закрыть Docker и отключить сетевое подключение vEthernet (DockerNAT). Это исправило мою проблему. Теперь, когда мне нужно использовать эмулятор Andoird, я должен закрыть Docker. Затем, когда я закончил отладку, я включаю / перезапускает Docker.
Источник