Эмулятор Android не может получить доступ к Интернету

Я знаю, что подобные вопросы задавались ранее, но моя проблема является новой только после установки Android Studio 2.3, последней версии в марте 2017 года. У меня есть несколько лет опыта разработки приложений для Android, и я никогда не сталкивался с этой проблемой раньше. После обновления до версии 2.3 Android Studio мой эмулятор больше не может выходить в Интернет. Я даже удалил / переустановил Android Studio 2.3 с нуля и создал новый эмулятор, и я все еще получаю ту же ошибку. Это не проблема приложения. Я даже не могу получить доступ к Интернету из Chrome, и у меня не было этой проблемы на прошлой неделе. Сообщение, которое я получаю, говорит о том, что DNS-адрес сервера не найден - DNS_PROBE_FINISHED_BAD_CONFIG. Единственное, что изменилось на моем компьютере за последнюю неделю, - это новая версия Android плюс, возможно, обновления для Windows 10. И да, мой компьютер имеет доступ к Интернету. Ниже приведено изображение моего эмулятора, когда я пытаюсь использовать Chrome для поиска "Google". эмулятор с сообщением об ошибке

71 ответ

Для меня я просто изменил DNS-адрес своей сети на 8.8.8.8 и работал:

Как это сделать на MacOSX:

  • Откройте "Системные настройки"
  • Нажмите на "Сеть"
  • Выберите сеть, к которой подключен ваш компьютер, и нажмите "Дополнительно".
  • Выберите "DNS", нажмите кнопку "+", введите "8.8.8.8"
  • Выберите "ОК" и "Применить"


Как это сделать в Windows и Linux:

https://developers.google.com/speed/public-dns/docs/using


После этого закройте эмулятор и запустите его снова.

Попробовав многие из этих решений, я собирался просто удалить свой текущий AVD и сделать его снова, но когда я нажал стрелку вниз на AVD, я заметил "Cold Boot Now".

AVD Меню

По прихоти я это попробовал. И вот мой эмулятор снова подключен к интернету!

Я нашел временное решение в старом потоке переполнения стека в Upgrade Up to SDK 2.3 - теперь ни у каких эмуляторов нет подключения. Обратите внимание, что эта тема говорит об Android SDK 2.3, а не Android Studio 2.3. Кажется, проблема в том, что эмулятор не может найти DNS, который в данный момент использует мой компьютер, и временный обходной путь - запустить эмулятор из командной строки и указать DNS-сервер. Какие бы проблемы ни возникали тогда, они должны были появиться в последней версии Android Studio.

Временное решение, описанное ниже, устраняет проблему с эмулятором доступа в Интернет. Однако это не устраняет проблему, возникающую при попытке запустить Android Device Monitor. Это все равно заставит эмулятор отключиться, как описано выше.

Обратите внимание, что в sdk есть два файла с именем "emulator.exe" - один в разделе sdk\tools, а другой в sdk\emulator. Любой из них может работать ниже, но я использую тот, который находится под sdk\emulator.

Первый шаг - найти, где находится SDK. Если предположить имя пользователя "jdoe" и установку Android Studio по умолчанию в Windows, SDK, скорее всего, находится в

C:\Users\jdoe\AppData\Local\Android\sdk

Второй шаг - определить имя AVD (эмулятора), который вы хотите запустить. Команда

C:\Users\jdoe\AppData\Local\Android\sdk\emulator\emulator.exe -list-avds

покажет названия ваших AVD. На моем компьютере он показывает только один, Nexus_5X_API_25.

Чтобы запустить эмулятор из командной строки с указанным DNS-сервером, используйте что-то вроде следующего:

C:\Users\jdoe\AppData\Local\Android\sdk\emulator\emulator.exe -avd Nexus_5X_API_25 -dns-server 8.8.8.8

В этом случае 8.8.8.8 является сервером имен публичного домена Google.

Вышеуказанные команды могут быть сокращены, если вы создадите соответствующие переменные среды и отредактируете переменную среды PATH, но я рекомендую соблюдать осторожность при этом.

[ОБНОВЛЕНИЕ 2020] для пользователей Mac

  1. Системные настройки
  2. Сеть
  3. WiFi > выберите Advanced
  4. Из Advanced Выберите вкладку DNS
  5. Добавить DNS-сервер 8.8.8.8

Обновление моего адаптера WIFI для разрешения DNS на 8.8.8.8 решило проблему для меня. Это начало происходить после обновления Apple, которое испортило адрес DNS.

введите описание изображения здесь

Просто откройте AVD Manager и сотрите данные того эмулятора, который у меня работает.

Откройте эмулятор Android и перейдите в Extended Controls. Затем перейдите в настройки => прокси (вкладка) и снимите флажок "Использовать настройку прокси-сервера Android Studuio HTTP".

macOS: длинная история вкратце ... убедитесь, что ваши настройки DNS 8.8.8.8 является первым в очереди, протрите ваши данные и выполните холодную перезагрузку.

Напоминание: интернет-соединение эмулятора Android не работает, если вы включили систему VPN на вашем компьютере.

Я решил стереть данные из AVD Manager

Я испытал эту же проблему после обновления. После открытия браузера Chrome в эмуляторе, google.com больше не мог быть достигнут.

Я нашел сообщение на SO, в котором говорилось, что проблема в том, что эмулятор пытается использовать отключенный сетевой адаптер. Для меня проблема возникала, когда я был подключен к локальной сети. Отключение адаптера беспроводной локальной сети решило проблему.

Чтобы отключить адаптер:

  1. Перейдите к сетевым подключениям
  2. Найти адаптер
  3. Щелкните правой кнопкой мыши и выберите отключить

Это случилось со мной, когда эмулятор замер, и мне пришлось убить процесс. Значок сигнала всегда показывал маленькую букву "х", как на скриншоте, и подключение к интернету не было успешным.

Единственное, что помогло, это удалить и переустановить эмулятор (не образы AVD)

В Android Studio:

Инструменты-> Android -> SDK Manager Снимите флажок "Эмулятор Android" и дайте ему удалить, затем проверьте снова и дайте установить снова.

Скриншот

Я также сталкиваюсь с той же проблемой, но я пытаюсь решить проблему, используя различные сообщения. Сегодня я обнаружил эту проблему. Скорее всего, проблема в конфигурации вашего компьютера, а не в Android Studio и эмуляторе Android.

Проблема исходит от вашей настройки сети. Просто установите Основной DNS-сервер на 8.8.8.8, что решит проблему.

Я получил простое и постоянное решение этой проблемы в Windows.

Перейти к сети и интернет вариант->

нажмите на Etherenet или Wi-Fi (для которого вы подключены) вариант ->

Нажмите на кнопку изменения адаптера ->

Щелкните правой кнопкой мыши сеть, к которой вы подключились.

Откроется диалоговое окно, и просто нажмите на опцию Интернет-протокол (TCP/IPv4).

Откроется другое диалоговое окно, в котором просто пропустите первый набор об IP-адресе (сохранить, как он задан) и щелкните переключатель " Использовать следующие адреса DNS-серверов": и введите как 8.8.8.8 в " Предпочитаемый DNS-сервер": и 8.8.4.4 на альтернативном DNS сервере:

Теперь вы можете открыть свой эмулятор в любое время, и вы получите интернет в эмуляторах Android.

Для меня проблема была вызвана тем, что я взял свой ноутбук домой без перезапуска эмулятора. Из того, что я прочитал, при запуске эмулятора он читает настройки DNS вашего ПК и использует их. Когда я был в своей домашней сети, мои рабочие настройки DNS не работали.
Так что да. Перезапуск эмулятора решил мою проблему.

Это было проблемой для меня в прошлый раз, когда эмулятор обновлялся сам, и тогда отключение других сетевых адаптеров исправляло это. Теперь он снова обрезается, но единственный включенный адаптер - это один Wi-Fi, так что мне нечего отключать.

Проблема появилась только после того, как я обновил через эмулятор инструменты до 26.1.1. Я удалил и переустановил эмулятор через вкладку обновления SDK Tools, и, к счастью, единственная возможность при повторной установке прямо сейчас - это установить 26.0.3 (которая, кажется, работает нормально).

Мораль этой истории - быть очень осторожным с обновлениями эмулятора.

У некоторых индийских интернет-провайдеров и других возникают проблемы сIPv6маршрутизация, которая приводит к тому, что наше приложение не подключается к Интернету или внутреннему серверу API.

Чтобы решить эту проблему, мы можем вручную назначитьIPv4обращается к эмулятору, который решает эту проблему.


  1. Сначала давайте запишем адрес, который динамически назначается вашему эмулятору.

    Вы можете убедиться в этом, зайдя в Настройки эмулятора -> Сеть и Интернет -> Интернет Android Wifi -> Android Wifi .
    Запишите адрес IPv4, шлюз и маску подсети.

  1. Теперь нажмите на значок редактирования в правом верхнем углу. Нажмите «Дополнительные параметры». Выберите статические настройки. ВведитеIPадрес, который вы записали на предыдущем шаге. и в DNS1 используйте8.8.8.8. Нажмите кнопку «Сохранить». Теперь ваш Интернет должен работать.

Я столкнулся с этой проблемой после того, как оставил свой эмулятор включенным, когда шел из дома в кафе. "Холодная загрузка сейчас" устранила проблему.

Просто goto AVD manager и Cold Boot Now работали для меня

После 10 дней неприятностей, я просто удалил все из C:\Android\.android\ и удалил все созданные AVD. Теперь интернет работает нормально.

Закрытие эмулятора и повторное открытие работали для меня

ОС WINDOWS 10

Я могу заставить его работать после выключения и включения Wi-Fi в конфигурации Android

Apple Макбук М1

Ни один из ответов не сработал для меня на Mac m1, я даже не смог подключиться к локальному хосту для сервера разработки, ориентированного на реакцию.

Хитрость для меня заключалась в том, чтобы отключить сотовые данные «T-Mobile», тогда он будет использовать AndroidWiFi для Интернета, и все будет работать нормально.

Вот скриншот моих рабочих настроек:

Пожалуйста, пройдите по ссылке ниже.

https://developer.android.com/studio/run/emulator-networking

Откройте эмулятор, нажмите "Еще …", а затем нажмите "Настройки и прокси". Отсюда вы можете определить свои собственные настройки HTTP-прокси.


Введите имя хоста, выполнивRun> cmd> hostname

Наконец, проверьте доступ к Интернету внутри эмулятора, просмотрев Chrome или Google.

Примечание. Часто проблема с удалением данных решается. Пожалуйста, следуйте всем шагам

У меня тоже была проблема, отключив прокси в настройках Android Studio и запустив эмулятор с "Холодной загрузкой сейчас", проблема была решена.

Я на андроид студии 3.1 и это случилось. Решил это путем перезапуска сервера adb

$ adb kill-server
$ adb start-server

Надеюсь, поможет. Спасибо

Попробуйте эти шаги один раз, у меня они сработали:

  1. Отключите ваш компьютер от интернета
  2. Закройте эмулятор, пока вы все еще отключены
  3. Снова подключитесь к Интернету
  4. Наконец-то снова запустите свой эмулятор

Решение для MacOS, которое не использует настраиваемый DNS для всей машины

Шаг 1

Найдите исполняемый файл, который Android Studio использует внутри Android SDK, и переименуйте его в emulator-original.

Шахта расположена /usr/local/share/android-sdk/emulator/emulator но это может варьироваться в зависимости от индивидуальных настроек.

Шаг 2

Добавьте новый файл, вызываемый вместо исходного файла, содержащегося в следующей команде (или используя выбранный вами DNS-сервер).

      #!/bin/bash
$0-original "$@" -dns-server 8.8.8.8

Шаг 3

Сделайте новый emulator исполняемый файл.

      chmod +x emulator

Шаг 4

Перезагрузите эмулятор с помощью Android Studio.

1-установить без прокси

2-недействительные кеши

3-удалить старые эмуляторы и добавить новый

Если Android-браузер может получить доступ к Интернету, вы можете запустить эмулятор с терминала с помощью этой команды

перейдите в путь SDK, то

$ /tools/emulator -avd Nexus_5X_API_23 -netdelay none -netspeed full

это решит вашу проблему с интернетом...

Другие вопросы по тегам