Android Studio - Android Emulator Wifi conectado sem Internet

101

Eu perdi um dia inteiro tentando soluções diferentes flutuando no SO e em outro lugar mencionado para habilitar o wi-fi no emulador do Android, mas sem sucesso. Alguém pode me ajudar a descobrir como habilito a internet no meu emulador de Android?

Tenho o Nexus 5X API 27 e tenho como alvo o Android 8.1 (Google Play) e o Nexus 5 API P e o Android 7.1.1.

Eu acredito que deveria haver uma maneira de habilitar internet nele ou então todo o ponto de fornecer wi-fi virtual no emulador parece ser um desperdício.

Estou no mac OS HS 10.13.4 conectado diretamente ao meu roteador sem proxy.

Eu até tentei deletar todos os AVDs, reinstalando-os. Até tentei instalar o Pixel 2 mais recente com Oreo Android 8.1

Nada parece estar funcionando. Alguém enfrentou esse problema e encontrou uma solução?

Qualquer ajuda seria de grande ajuda

Obrigado, Vikram

Atualização: Quando eu conecto meu computador pelo celular como hotspot wi-fi, o emulador tem internet via wi-fi, mas falha ao conectar o computador ao roteador doméstico.

Vikram Mahishi
fonte
já não está habilitado?
Eu tenho exatamente o mesmo problema. Ele funciona através do ponto de acesso do meu telefone, mas não através do meu roteador. Que tipo de roteador você tem? Tudo funcionava bem antes, quando eu tinha um roteador AVM, mas agora tenho um roteador Telekom Speedport e ele não funciona mais.
TheBaj
1
@TheBaj: O tipo de roteador pode não ser o problema aqui ou pode ser, mas não sei. Experimente a solução abaixo que funcionou para mim.
Vikram Mahishi
1
@VikramMahishi basta atualizar o emulador do SDK do seu Android. Está funcionando para mim.
Zala Janaksinh

Respostas:

190

A seguir estão as soluções para Windows e Mac, mas soluções semelhantes funcionam em qualquer sistema operacional:

  1. No Windows

    • Abra o Centro de Rede e Compartilhamento e clique na Conexão atual
    • Clique em Propriedades
    • Clique duas vezes em Protocolo de Internet versão 4 (TCP / IPv4)
    • Defina os servidores DNS preferenciais e alternativos como (captura de tela abaixo):

      8.8.8.8
      8.8.4.4
      
  2. No Mac

    • Vá para Configurações> Rede> Avançado ...> DNS
    • Exclua todas as entradas existentes e adicione essas duas entradas (captura de tela abaixo):

      8.8.8.8
      8.8.4.4
      

      Observação: para usuários de Mac, se o campo de entradas estiver desabilitado e você não puder editá-lo, clique no ícone 'Bloquear' na parte inferior da janela e digite a senha para poder fazer alterações

Reinicie o emulador e ele deve resolver:

Capturas de tela:

  1. janelas

Emulador de Android não conecta à solução de internet no windows

  1. Mac

Emulador de Android não conecta à solução de internet em um mac


Edit: Esta é a solução para uma situação em que o wi-fi do emulador mudou o DNS para algum DNS não funcional. Embora isso funcione na maioria das vezes, também pode haver outros motivos que podem não ser corrigidos com esta solução.

Raman Sahasi
fonte
6
Fiquei extremamente intrigado com este problema. Isso resolve tudo perfeitamente. Kudos!
Vijay Kumar Kanta
1
Obrigado. Nunca teria descoberto isso sozinho!
pkozlowski
se deparar com isso usando emuladores android 8 Oreo (AVDs) no android studio. o sinalizador cli e a mudança de dns em todo o sistema corrigiram o problema.
Thom
1
obrigado! estava lutando com esse erro por mais de 3 dias
RL Shyam
2
Obrigado !!!! funcionou para mim, 8.8.8.8 8.8.4.4
kallayya Hiremath
104

Minha solução usando Mac OSX 10.13

Eu li sobre isso ser causado pela placa LAN e WiFi sendo habilitados, e algumas abordagens pareciam complicadas para mim, então eu simplesmente tentei isso e funcionou:

  • WiFi desativado no meu laptop.
  • Desliguei o emulador.
  • Fiz uma inicialização a frio no emulador (AVD Manager -> nas ações do emulador -> Cold Boot Now).
  • Após reiniciar com o laptop WiFi desabilitado, o emulador mostrou uma conexão WiFi adequada (o emulador ainda mostra AndroidWifi, mas está conectado à internet do meu laptop. O símbolo WiFi agora se parece com este: Símbolo WiFi conectado )
  • Em seguida, habilitei o WiFi no meu laptop e tudo funcionou.
Juangui Jordán
fonte
1
Isso funcionou e eu fiz um “wipe data” antes do “cold boot” e tive que configurar o WiFi no emulador, havia uma notificação ao deslizar para baixo na tela inicial.
Manuel de
4
Funcionou para mim! Acabei de fazer uma inicialização a frio com wi-fi desativado e funcionou muito bem.
Hasen
1
Funcionou para mim. Obrigado.
Michael Angelo Reyes
1
Funcionou como charme !! Obrigado :)
SARATH SASI
2
Esta é uma solução muito melhor do que modificar as configurações globais de DNS em seu computador.
Tyler Wood
42

@TheBaj: Eu descobri o problema com isso e resolvi. O problema é que quando você está conectado através do roteador, o androidwifi do seu emulador usa as configurações e define o DNS para algo diferente de 8.8.8.8 que é o DNS do Google (presumo que seja uma configuração meio obrigatória para o androidwifi ganhar internet Acesso). Mas se eu alterar o DNS em minhas configurações de rede, o plugin google-services que busca suas dependências, especialmente aquele que está sendo baixado dejcenter() , não será baixado e, portanto, sua sincronização irá falhar, o que eventualmente falhará em sua construção.

Portanto, o truque é ter seu DNS do Google (8.8.8.8) configurado nas configurações de rede após as configurações padrão do roteador - esta parte se encarrega de baixar as dependências de jcenter()e a sincronização e construção são bem-sucedidas.

Agora inicie seu emulador com emulator @Nexus_5X_API_27 -dns-server 8.8.8.8 comando do terminal que força o emulador a usar 8.8.8.8 já que seu DNS e o emulador terá internet.

Estou trabalhando em um aplicativo reagente nativo, portanto, para mim, o Android Studio é desnecessário e configurei meu bashrc para iniciar os diferentes emuladores da seguinte maneira,

   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
   }

Então, de um terminal, eu inicio o emulador de minha escolha e, em seguida, executo a compilação em outro terminal que executa meu aplicativo no emulador iniciado e MEU EMULADOR FALSO TEM ACESSO À INTERNET. :)

Experimente e espero que isso ajude.

Obrigado, Vikram

Vikram Mahishi
fonte
Obrigado, agora funciona. Passei o dia inteiro neste: /
TheBaj
'emulador' não é reconhecido como um comando interno ou externo, programa operável ou arquivo de lote.
Bhupesh
@Bhupesh veja %HOME%\AppData\Local\Android\Sdk\emulator- foi aqui que eu encontrei.
t3chb0t
10

Eu estava tendo o mesmo problema e, após as etapas a seguir, o resolvi.

Passos:

  1. Vá para as configurações do emulador
  2. Selecione a guia Proxy
  3. Em seguida, marque a opção "Usar configurações de proxy HTTP do Android Studio"
  4. Clique em Aplicar

Praneeth
fonte
Esta é a única resposta que funcionou para mim, obrigado!
Arià
9

No macOS:

  1. Abra a rede nas preferências do sistema .
  2. Selecione sua rede atual do lado esquerdo, em seguida, clique em Avançado ... .
  3. Altere Configurar IPv6 (na guia TCP / IP ) de Automaticamente para Link-local somente .
  4. Reinicie seu emulador.
Vincent Sit
fonte
8

Solução para Windows:

  1. Vá para o local do seu Android SDK, por exemplo: C: \ Users \ shehzad \ AppData \ Local \ Android \ Sdk \ emulator .
  2. Abra o prompt de comando no mesmo local. Escrever este comando: emulator -avd Nexus_4_API_29 -gpu host -dns-server 8.8.8.8. Aqui Nexus_4_API_29estará o nome do seu dispositivo emulador (você pode encontrá-lo na lista de dispositivos do Android Studio -> AVD Manager). Este comando executará o dispositivo especificado e o WIFI terá a Internet conectada.

Espero que isto ajude.

Shehzad Osama
fonte
Sim, isso só funcionou para mim. Anteriormente, mostrava Conectado, mas sem Internet. Depois de implementar sua solução, isso começou a funcionar.
ashishdhiman2007
@ ashishdhiman2007 É bom saber que seu problema foi resolvido usando minha solução :)
Shehzad Osama
7

Resolvi com google dns no adaptador de rede 8.8.8.8e8.8.4.4

Android Emulator wi-fi conectado sem solução de internet para windows

Marcus J. Kennedy
fonte
Espero que isso seja relatado como um bug em algum lugar, porque também demorou algum tempo para mim.
Renetik
7

Limpe os dados clicando com o botão direito na lista de dispositivos virtuais e a inicialização a frio funciona para mim.

Indrakula
fonte
6

Bem, eu fiz assim:

Etapas para adicionar proxy manual:

  1. Vá para as configurações do emulador
  2. Vá para a guia Proxy
  3. Definir configuração de proxy manual
  4. Adicione seu nome de host e número de porta
  5. Clique em Aplicar

Captura de tela de referência:

insira a descrição da imagem aqui

Espero que ajude.

Hiren Patel
fonte
6

No Mac OSX (Catalina para mim), o problema é causado pelo fato de que o emulador automaticamente pega o servidor de nomes olhando em /etc/resolv.conf e pegando o primeiro, no meu caso um endereço IPv6. Fonte: https://developer.android.com/studio/run/emulator-networking#dns

Simplesmente edite o arquivo (sudo vi /etc/resolv.conf) e mova o endereço IPv4 (192.168.1.1 no meu caso) para ser o primeiro, antes dos endereços IPv6. Sério, era isso.

Demetrios Christopher
fonte
4

Talvez isso ajudasse alguém. Tentei todas as soluções acima. Alteração de DNS, inicialização a frio, etc. Após várias horas de tentativa e erro, fui para a documentação oficial, que dizia que o emulador pega a configuração do DNS. da máquina host no momento da inicialização do emulador. Eu tinha VMWare instalado em minha máquina, que instala alguns adaptadores de rede. Então, acabei de alterar a configuração do DNS. de todos os adaptadores (incluindo adaptadores VMWare) e inicializei meu emulador a frio. Meu Deus, o problema que não parecia ir embora por horas, simplesmente deu certo!

Agora, o que acho estranho é que mudei de volta a configuração do DNS. de todos os adaptadores para automático e inicializei meu emulador a frio novamente. O WiFi ainda funciona bem. SO: Windows 10.

Shesha Vishnu Prasad
fonte
Eu só precisava inicializar o emulador a frio
KvdLingen
4

100% trabalhando no Windows 10

O Android AVD vem com o Google DSN configurado dentro de emuladores. Portanto, precisamos definir o mesmo para compartilhamento de rede para acessá-lo.

Endereços IP DNS públicos do Google Os endereços IP DNS públicos do Google (IPv4) são os seguintes:

8.8.8.8

8.8.4.4

Os endereços IPv6 de DNS público do Google são os seguintes:

2001: 4860: 4860 :: 8888 2001: 4860: 4860 :: 8844 Você pode usar qualquer um dos endereços como servidor DNS primário ou secundário.

Mais informações

Aqui eu mostro para definir as etapas de IP v4

  1. Rede aberta e centro de compartilhamento
  2. Clique com o botão direito na conexão de internet atual
  3. Selecione Propriedades
  4. Clique duas vezes em Protocolo de Internet versão 4 (TCP / IPv4)
  5. Selecione Usar o seguinte endereço de servidor DNS
  6. Defina o servidor DNS preferido e alternativo
  7. Servidor DNS preferido: 8.8.8.8
  8. Servidor DNS alternativo: 8.8.4.4
  9. Clique em OK
  10. Reinicie o Android AVD

Nota: Se a VPN estiver habilitada, não funcionará, será necessário desconectar a VPN

Mais informações no Google DSN

Vinayak
fonte
1
Infelizmente, precisamos de VPN quando WFH. Não posso acreditar que o Google deixou esse problema por muitos anos.
You-Liang Shih
3

No Windows:

Após testar algumas soluções, encontrei a minha clicando na seta para baixo no AVD, opção "Cold Boot Now". após a inicialização, o Android teve acesso à internet, então funcionou para mim.

Hamid Shoja
fonte
2

Uma simples inicialização a frio funcionou para mim, não há necessidade de iniciar outros emuladores ou limpar a memória.

Basta fechar o emulador e selecionar a opção "Cold Boot Now" no menu suspenso adjacente ao botão play. Se não, procure qualquer uma das opções mais abrangentes listadas aqui, mas sugiro sempre começar com a solução mais simples.

Boa sorte!

Eduardo A del Corral Lira
fonte
2

Se você tiver alguma VPN conectada - tente desconectá-la.

Para mim, foi através de VPN Cisco AnyConnect Secure Mobility Client. Depois de fechar o cliente Cisco (que encerra a conexão VPN), o WiFi no emulador Android começou a funcionar.

Adomas
fonte
Obrigado, você me salvou :) Usei NordVPN e desconectar ajudou.
ymerdrengene
@ymerdrengene que bom que ajudou! :)
Adomas
1

O que funcionou para mim:

  • Desligue o emulador (usando sua tecla liga / desliga)
  • Inicie seu aplicativo em OUTRO emulador e feche-o.
  • Agora inicie seu aplicativo no emulador anterior novamente.
M. Usman Khan
fonte
1

Se o ponto wi-fi mudou, reinicie o emulador para que ele atualize as configurações de rede do serviço dhcp.

MiguelSlv
fonte
1

Redefinir as configurações de rede no Android Emulator corrige esse problema.

MachineBreaker
fonte
1

Para novos usuários que buscam: às vezes, VPN é a sua solução. A alteração da configuração de rede nem sempre é possível devido a problemas de rede. Se você está em endereços IP que o google não responde para essas regiões, sua solução é usar o vpn.Use um vpn adequado (um vpn que por meio dele você pode atualizar seu android studio). Quando seu vpn estiver ligado, inicie seu dispositivo avd ( claro que o nível de API do seu emulador é importante, por exemplo, não tenho nenhum problema com api 22, mas para api 28 é necessário usar vpn!). Essa foi a minha experiência com o emulador de Android na Internet.

maniaq
fonte
1

Mude a localização do emulador e configure-o para sua localização atual.

  • Passos : -

    1. Clique em Mais nas opções do emulador
    2. Vá para o local
    3. Pesquise seu endereço e clique em DEFINIR LOCALIZAÇÃO
Gagan Raghunath
fonte
1

Eu tive o mesmo problema - no emulador eu estava conectado ao wi-fi / lte, mas não conseguia acessar nenhum site.

A solução para mim foi consertar o IP do meu servidor DNS doméstico:

$ cat /etc/resolv.conf 
search home
nameserver 192.168.1.1 #was 192.168.0.1 - it used to work when I was connected to a different router
nameserver 1.1.1.1
nameserver 1.0.0.1

você realmente não precisa usar google dns

poderoso bruno
fonte
0

Tente usar a LAN, se disponível. Isso funciona como um encanto para mim ...

Senthil kumar Moorthy
fonte