Android Studio - емулятор Android Wi-Fi, підключений без Інтернету


91

Я витратив цілий день, випробовуючи різні рішення, що плавають у SO та іншому згаданому місці, щоб увімкнути Wi-Fi на емуляторі Android, але безрезультатно. Хто-небудь може допомогти мені зрозуміти, як мені ввімкнути Інтернет на своєму емуляторі Android?

У мене є Nexus 5X API 27 і націлений на Android 8.1 (Google Play), а Nexus 5 API P, а на Android 7.1.1.

Я вважаю, що повинен бути спосіб увімкнути Інтернет на ньому, інакше вся суть забезпечення віртуального Wi-Fi на емуляторі здається марною.

Я працюю на mac OS HS 10.13.4, безпосередньо підключеному до маршрутизатора без проксі-сервера.

Я навіть спробував видалити всі AVD, перевстановивши їх. Я навіть спробував встановити останню версію Pixel 2 з Oreo Android 8.1

Здається, нічого не працює. Хто-небудь стикався з цим питанням і знайшов рішення?

Будь-яка допомога буде дуже корисною

Дякую, Вікраме

Оновлення: Коли я підключаю комп’ютер через телефон як точку доступу Wi-Fi, емулятор має Інтернет через Wi-Fi, але він не працює, коли я підключаю комп’ютер до домашнього маршрутизатора.


це вже не ввімкнено?

У мене те саме питання. Це працює через гарячу точку телефону, але не через маршрутизатор. Який у вас маршрутизатор? Раніше все працювало нормально, коли у мене був маршрутизатор AVM, але зараз у мене є маршрутизатор Telekom Speedport, і він більше не працюватиме.
TheBaj

1
@TheBaj: Тип маршрутизатора може не бути проблемою тут, або може бути, але я не знаю. Спробуйте наведене нижче рішення, яке мені підходило.
Вікрам Махіші,

1
@VikramMahishi просто оновіть емулятор вашого android sdk. Це працює для мене.
Zala Janaksinh

Відповіді:


176

Нижче наведено рішення для Windows та Mac, але подібні рішення будуть працювати в будь-якій ОС:

  1. У Windows

    • Відкрийте Центр мереж і спільного доступу та натисніть поточне підключення
    • Клацніть на Властивості
    • Двічі клацніть на Інтернет-протокол версії 4 (TCP / IPv4)
    • Встановіть бажаний та альтернативний DNS-сервери як (знімок екрана нижче):

      8.8.8.8
      8.8.4.4
      
  2. На Mac

    • Перейдіть до Налаштування> Мережа> Додатково ...> DNS
    • Видаліть усі записи, які у вас є, і додайте ці два записи (знімок екрана нижче):

      8.8.8.8
      8.8.4.4
      

      Примітка. Якщо для користувачів Mac вимкнено поле записів, і ви не можете редагувати його, натисніть на піктограму "Заблокувати" в нижній частині цього вікна та введіть пароль, щоб мати можливість вносити зміни

Перезапустіть емулятор, і він повинен вирішити:

Знімки екрана:

  1. Windows

Емулятор Android не підключається до Інтернет-рішення на Windows

  1. Мак

Емулятор Android не підключається до Інтернет-рішення на Mac


Редагувати: це виправлення ситуації, коли Wi-Fi емулятора змінив DNS на якийсь непрацюючий DNS. Хоча це працює більшу частину часу, можуть бути й інші причини, які не можуть бути виправлені цим рішенням.


6
Я була надзвичайно спантеличена цією проблемою. Це вирішує це бездоганно. Слава!
Віджай Кумар Канта

1
Дякую. Я б ніколи не зрозумів цього сам!
pkozlowski

натрапити на це, використовуючи емулятори Android 8 Oreo (AVD) на android studio. виправлено це або прапор cli, і загальносистемна dns-зміна
Том,

1
Дякую! боровся з цією помилкою більше 3 днів
Р. Л. Шям

2
Дякую !!!! це спрацювало для мене, 8.8.8.8 8.8.4.4
kallayya Hiremath

94

Моє рішення за допомогою Mac OSX 10.13

Я читав про те, що це спричинено ввімкненою мережевою картою та Wi-Fi, і деякі підходи здалися мені складними, тому я просто спробував це, і це спрацювало:

  • Інвалід WiFi на моєму ноутбуці.
  • Вимкнено емулятор.
  • Зробив холодне завантаження на емуляторі (AVD Manager -> про дії емулятора -> Cold Boot Now).
  • Після перезавантаження з вимкненим Wi-Fi для ноутбука емулятор продемонстрував належне з'єднання WiFi (емулятор все ще відображає AndroidWifi, але підключений до мого Інтернету для ноутбука. Символ WiFi тепер виглядає так: символ WiFi підключений )
  • Потім я включив WiFi на своєму ноутбуці, і все запрацювало.

Це спрацювало, і я зробив "стирання даних" перед "холодним завантаженням", і мені довелося налаштувати WiFi в емуляторі, було повідомлення при проведенні пальцем вниз на головному екрані.
Мануель,

2
Працював у мене! Я просто холодно завантажився з відключеним Wi-Fi, і він працював чудово.
Hasen

Працював у мене. Дякую.
Майкл Анджело Рейес,

Працював як шарм !! Дякую :)
SARATH SASI

Це найкраща відповідь.
Ахмед Мостафа

40

@TheBaj: Я зрозумів проблему з цим і виправив. Проблема полягає в тому, що коли ви підключені через маршрутизатор, androidwifi у вашому емуляторі використовує налаштування і встановлює DNS на щось інше, ніж 8.8.8.8, що є Google DNS (я вважаю, це є якось обов'язковим налаштуванням для androidwifi для отримання Інтернету доступ). Але якщо я зміню DNS у своїх мережевих налаштуваннях, плагін google-services, який отримує ваші залежності, особливо той, з якого завантажується jcenter(), не буде завантажений, а отже, ваша синхронізація не вдасться, що врешті-решт не вдасться побудувати.

Тож фокус у тому, що у вас налаштовано Google DNS (8.8.8.8) у налаштуваннях мережі після налаштувань маршрутизатора за замовчуванням - ця частина піклується про завантаження залежностей jcenter()та про синхронізацію та побудову.

Тепер запустіть свій емулятор за допомогою emulator @Nexus_5X_API_27 -dns-server 8.8.8.8команди з терміналу, яка змушує емулятор використовувати 8.8.8.8 як свій DNS, і емулятор матиме Інтернет.

Я працюю над рідним додатком для реагування, тому для мене андроїд-студія зайвий, і я налаштував свій bashrc для запуску різних емуляторів наступним чином,

   function emunex5 {
    emulator @Nexus_5X_API_27 -dns-server 8.8.8.8
 }

  function emunex6 {
    emulator @Nexus_6_API_27 -dns-server 8.8.8.8
  }

  function emupix {
    emulator @Pixel_XL_API_27 -dns-server 8.8.8.8
   }

Отже, з одного терміналу я запускаю емулятор на мій вибір, а потім запускаю збірку на іншому терміналі, який запускає моє додаток на запущеному емуляторі, і МОЙ ФРАНОВИЙ ЕМУЛАТОР МАЄ ДОСТУП В ІНТЕРНЕТ. :)

Спробуйте це, і я сподіваюся, це допоможе.

Дякую, Вікраме


Дякую, це працює зараз. Провів на це цілий день: /
TheBaj

'емулятор' не розпізнається як внутрішня чи зовнішня команда, операційна програма або пакетний файл.
Бупеш

@Bhupesh see %HOME%\AppData\Local\Android\Sdk\emulator- тут я його знайшов.
t3chb0t

9

У мене була та сама проблема, і наступні кроки вирішили її.

Кроки:

  1. Зайдіть в Налаштування емулятора
  2. Виберіть вкладку Проксі
  3. Потім встановіть прапорець "Використовувати налаштування HTTP-проксі-сервера Android Studio"
  4. Клацніть Застосувати


Це єдина відповідь, яка мені спрацювала, дякую!
Аріа

6

Я вирішив з Google DNS на мережевий адаптер 8.8.8.8і8.8.4.4

Емулятор Android Wi-Fi підключений без інтернет-рішення для Windows


Сподіваємось, про це десь повідомляють як про помилку, оскільки це теж зайняло для мене деякий час.
Ренетик

5

Витріть дані, клацнувши правою кнопкою миші на списку віртуальних пристроїв, і холодне завантаження працює для мене ..


4

Ну, я зробив це так:

Кроки для додавання проксі-сервера вручну:

  1. Перейдіть до налаштувань емулятора
  2. Перейдіть на вкладку Проксі
  3. Встановити ручну конфігурацію проксі
  4. Додайте ім’я хоста та номер порту
  5. Клацніть на Застосувати

Довідковий знімок екрану:

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

Сподіваюся, це допоможе.


4

Мені це допомогло: на Mac OSX (для мене Catalina) проблема спричинена тим, що емулятор автоматично піднімає nameserver, переглядаючи /etc/resolv.confта вибираючи першу, у моєму випадку, адресу IPv6. Джерело

Просто відредагуйте файл ( $ sudo vi /etc/resolv.conf) і перемістіть адресу IPv4 ( 192.168.1.1у моєму випадку) на першу, перед адресами IPv6.

Серйозно, це було все. Від Деметрія Крістофера


Дякуємо, що знайшли час, щоб подати відповідь.! Чи можете ви: - 1) відредагувати свою відповідь, щоб відповідь була детальною. 2) Поясніть, чого ви намагаєтесь досягти за допомогою цієї відповіді, і що ви хочете сказати.? Дивіться Як написати хороший відповідь в довідковому центрі для отримання додаткової інформації (Як задати питання: stackoverflow.com/help/how-to-answer )
Paresh Mangukiya

3

Можливо, це комусь допоможе. Я спробував усі наведені вище рішення. Зміна DNS, холодна завантаження тощо. Після кількох годин спроб і помилок я перейшов до офіційних документів, де говорилося, що емулятор піднімає конфігурацію DNS. хост-машини під час завантаження емулятора. На моїй машині було встановлено VMWare, який встановлює кілька мережевих адаптерів. Отже, я щойно змінив конфігурацію DNS. всіх адаптерів (включаючи адаптери VMWare) і холодний завантажувач мого емулятора. OMG, проблема, яка, здавалося б, не зникала годинами, просто вийшла правильно!

Зараз, що мені здається дивним, я повернув конфігурацію DNS назад. всіх адаптерів до авто, і холод знову завантажив мій емулятор. WiFi все ще працює чудово. ОС: Windows 10.


Мені просто потрібно було холодно завантажити емулятор
KvdLingen

3

100% робота в Windows 10

Android AVD поставляється з Google DSN, налаштованим всередині емуляторів. Отже, нам потрібно встановити те саме для спільного використання мережі для доступу до того самого.

Загальнодоступні IP-адреси DNS Google. Загальнодоступні IP-адреси DNS Google (IPv4) такі:

8.8.8.8

8.8.4.4

Загальнодоступні адреси Google DNS IPv6 такі:

2001: 4860: 4860 :: 8888 2001: 4860: 4860 :: 8844 Ви можете використовувати будь-яку адресу як основний або додатковий DNS-сервер.

Більше інформації

Тут я покажу для встановлення кроків IP IP v4

  1. Відкрийте Центр мереж і спільного доступу
  2. Клацніть правою кнопкою миші на поточному підключенні до Інтернету
  3. Виберіть Властивості
  4. Двічі клацніть на Інтернет-протокол версії 4 (TCP / IPv4)
  5. Виберіть Використовувати таку адресу DNS-сервера
  6. Встановіть бажаний та альтернативний DNS-сервер
  7. Переважний DNS-сервер: 8.8.8.8
  8. Альтернативний DNS-сервер: 8.8.4.4
  9. Натисніть OK
  10. Перезапустіть Android AVD

Примітка: Якщо VPN увімкнено, то це не буде працювати, потрібно відключати вашу VPN

Більше інформації про Google DSN


1
На жаль, нам потрібна VPN, коли WFH. Не можу повірити, що Google залишає це питання протягом багатьох років.
You-Liang Shih

3

На Mac OSX (Catalina для мене) проблема спричинена тим, що емулятор автоматично піднімає сервер імен, переглядаючи /etc/resolv.conf та вибираючи перший, у моєму випадку адресу IPv6. Джерело: https://developer.android.com/studio/run/emulator-networking#dns

Просто відредагуйте файл (sudo vi /etc/resolv.conf) і перемістіть адресу IPv4 (в моєму випадку 192.168.1.1) на першу, перед адресами IPv6. Серйозно, це було все.


1
Ого, неймовірно, але це спрацювало на мене, дякую.
Jhegs

3

На macOS:

  1. Відкрийте мережу в системних налаштуваннях .
  2. Виберіть існуючу мережу з лівого боку натисніть кнопку Додатково ... .
  3. Змініть Налаштування IPv6 (на вкладці TCP / IP ) з Автоматично на Лише локальне посилання .
  4. Перезапустіть емулятор.

2

У Windows:

Перевіривши деякі рішення, я знайшов своє, натиснувши стрілку вниз на AVD, опція "Холодне завантаження зараз". після завантаження Android мав доступ до Інтернету, тому він працював у мене.


2

Рішення для Windows:

  1. Перейдіть до свого Android SDK Location, наприклад: C: \ Users \ shehzad \ AppData \ Local \ Android \ Sdk \ emulator .
  2. Відкрийте командний рядок у тому самому місці. Написати цю команду: emulator -avd Nexus_4_API_29 -gpu host -dns-server 8.8.8.8. Тут Nexus_4_API_29буде вказано ваше ім’я пристрою емулятора (список пристроїв ви можете дізнатися з Android Studio -> AVD Manager). Ця команда запустить вказаний пристрій, і WIFI матиме Інтернет.

Сподіваюся, це допомагає.


0

Що мені вдалося:

  • Вимкніть емулятор (за допомогою його кнопки живлення)
  • Запустіть програму на ІНШОМ Емуляторі, а потім закрийте її.
  • Тепер знову запустіть програму в попередньому емуляторі.

0

Якщо місце Wi-Fi змінилося, просто перезапустіть емулятор, щоб емулятор оновив налаштування мережі від служби dhcp.


0

Скидання налаштувань мережі на емуляторі Android вирішує цю проблему.


0

Для мене спрацював простий холодний завантажувач, не потрібно запускати інші емулятори чи витирати пам’ять.

Просто закрийте емулятор і виберіть опцію «Холодне завантаження зараз» у меню, що випадає поруч із кнопкою відтворення. Якщо не шукати будь-якого з більш вичерпних варіантів, перерахованих тут, але я пропоную завжди починати з найпростішого рішення.

Удачі!



0

Для нових користувачів пошуку: Іноді VPN - це ваше рішення. Зміна налаштувань мережі не завжди можлива через проблеми з мережею. Якщо у вас є ip-адреси, на які Google не відповідає у цих регіонах, рішенням є використання vpn. Використовуйте відповідний vpn (vpn, через який ви можете оновити андроїд-студію). Коли ваш vpn увімкнено, запустіть свій пристрій avd ( звичайно, рівень api вашого емулятора важливий, наприклад, у мене не виникає проблем з api 22, але для api 28 потрібно використовувати vpn!). Це був мій досвід щодо емулятора android в Інтернеті.


0

Змініть розташування емулятора та встановіть його для поточного розташування.

  • Кроки: -

    1. Натисніть Більше в параметрах емулятора
    2. Перейти до місця
    3. Знайдіть свою адресу та натисніть ВСТАНОВИТИ МІСЦЕ
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.