O emulador do Android não consegue acessar a internet

255

Sei que perguntas semelhantes foram feitas antes, mas meu problema só é novo após a instalação do Android Studio 2.3, a versão mais recente em março de 2017. Tenho vários anos de experiência no desenvolvimento de aplicativos Android e nunca encontrei esse problema antes. Após a atualização para a versão 2.3 do Android Studio, meu emulador não consegue mais acessar a Internet. Até desinstalei / reinstalei o Android Studio 2.3 a partir do zero e criei um novo emulador, e ainda estou recebendo o mesmo erro. Este não é um problema do aplicativo. Nem consigo acessar a Internet no Chrome e não estava tendo esse problema na semana passada. A mensagem que recebo diz que o endereço DNS do servidor não foi encontrado - DNS_PROBE_FINISHED_BAD_CONFIG. A única coisa que mudou no meu computador na última semana é a nova versão do Android, além de possivelmente atualizações para o Windows 10. E sim, meu computador tem acesso à Internet. Abaixo está uma imagem do meu emulador quando tento usar o Chrome para pesquisar "Google". emulador com mensagem de erro

John Moore
fonte
Descobri um problema adicional no Android Studio 2.3 que não está relacionado ao acesso à Internet, mas que pode estar relacionado ao problema acima. Com o Android Studio aberto para um projeto e um emulador em execução, posso executar o aplicativo no emulador. Mas se eu abrir o Android Device Monitor, ele informa que o emulador está offline. Então, se eu fechar o Android Device Monitor e voltar ao Android Studio, ele também informa que o emulador está offline. Preciso fechar e reiniciar o emulador para que o Android Studio possa encontrá-lo novamente. Esse problema, como o acima, é repetível.
John Moore
Outra atualização. Instalei o Android Studio 2.3 em outro computador Windows 10 mais antigo / mais lento e o problema ainda ocorre. Além disso, a certa altura, pensei que o problema estivesse relacionado a um patch ruim do Microsoft WPD, mas o computador antigo não tinha o patch instalado. Além disso, após várias tentativas malsucedidas, eu consegui remover o patch incorreto do meu computador principal e ainda não obtive êxito em fazer o Chrome funcionar em um emulador. Neste ponto, tenho mais certeza de que o problema está no Android Studio 2.3.
John Moore
Leia isto se você estiver no Windows: stackoverflow.com/a/43066809/2827025
anemomylos
1
Acho que essa pergunta ainda é boa, pois é mais 'geral' do que a citada e também porque menciona a atualização do Android Studio. Em abril de 2018, eu o atualizei para a versão 3.1.2 e de repente comecei a ter esse problema.
Shine
9
Não entendo por que temos que perder tanto tempo com esse tipo de problema. Equipe Android ... apenas conserte!
R3dm4n

Respostas:

372

Altere o endereço DNS da sua rede para 8.8.8.8 (DNS do Google) ou outro de sua preferência:

Mac OS X:
  • Abra "Preferências do sistema"
  • Clique em "Rede"
  • Selecione a rede à qual seu computador está conectado e clique em "Avançado"
  • Selecione "DNS", selecione o botão "+", digite "8.8.8.8" (DNS do Google) ou, se preferir o OpenDNS, "208.67.222.222"
  • Selecione "Ok" e "Aplicar"

Windows e Linux:

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


Depois disso, feche o emulador e inicie-o novamente.

Ana Paula
fonte
Eu tive que seguir este guia para windows: developers.google.com/speed/public-dns/docs/using, mas também funcionou para mim. Acho que, por algum motivo, minha rede doméstica não foi configurada corretamente para o emulador.
precisa saber é o seguinte
10
Se você não deseja que seu tráfego DNS passe pelo Google, use as configurações do OpenDNS. 208.67.222.222 e 208.67.220.220
Justin Noel
5
Fiz o mesmo, mas tive que reiniciar o emulador para fazê-lo funcionar, obrigado pela dica!
9188 Steven Elliott #
30
De encaminhar todo o seu sistema host tráfego DNS para o Google, o que uma resposta -.-
fl034
2
Você também pode, em vez de "forçar brutal" todo o computador a usar um novo servidor DNS (e, em seguida, usar o emulador como padrão para que o emulador herde essas alterações), basta alterar as configurações de DNS do emulador ... Existem várias maneiras de fazer isso . Mais detalhes sobre as várias opções disponíveis aqui: stackoverflow.com/questions/2039964/…
trcarden 16/06/19
203

Depois de tentar muitas dessas soluções, eu simplesmente excluí meu AVD atual e o faço novamente, mas quando clico na seta para baixo no AVD, observei "Cold Boot Now".

Menu AVD

Por um capricho, tentei isso. Eis que meu emulador tem conectividade à Internet novamente!

EDIT: Ok, para aqueles que dizem por que não apenas limpar os dados e reiniciar. Você reformata seu PC toda vez que o reinicia? Limpar os dados no emulador é como redefinir a fábrica para um telefone ou reformatar o disco rígido do PC e reinstalar o sistema operacional. É desnecessário, a menos que os dados estejam totalmente corrompidos.

Quando você desliga o emulador e o reinicia, é como colocar o PC no modo de hibernação ou suspensão. A memória não é limpa, é salva.

Fazer uma inicialização a frio é o mesmo que reiniciar o telefone ou reiniciar o PC. Redefine a memória e permite que as coisas sejam recarregadas. Isso permite que a emulação de rede inicie com memória limpa e conecte-se corretamente.

Portanto, não limpe seus dados. Apenas bota a frio. Se ainda assim não funcionar, limpe, mas salve-o como último recurso.

Timothy Winters
fonte
8
Este fixa-lo para mim depois de mudar de ligado a wi-fi
Lucas
3
Funciona para mim também, enfrentando o mesmo problema de alternar entre diferentes adaptadores de rede. Os problemas parecem ser que o emulador ainda está de alguma forma conectado à configuração de conexão anterior; portanto, quando o emulador é iniciado com Cold Boot Agora a configuração de rede é reiniciada e tudo começa a funcionar novamente. Obrigado por compartilhar;) !!
Gueorgui Obregon
1
Funciona bem! mas por que?
ucMedia 14/02/19
1
Você limpa o telefone toda vez que reinicia? Isso é o que é uma partida a frio no emulador, uma reinicialização a frio. É o mesmo que desligar o telefone e ligá-lo novamente. Não é necessário limpar os dados do emulador após uma inicialização a frio, a menos que ele ainda tenha problemas.
Timothy Winters
Isso funcionou para mim .. Tentei um proxy diferente, tentei reiniciar, criei um AVD diferente .. Não sei por que isso funcionou .. mas funcionou .. !!
30519 Swapnil Kale
122

Encontrei uma solução temporária em um antigo thread Stack Overflow no Upgrade para SDK 2.3 - agora nenhum emulador tem conectividade . Observe que este tópico fala sobre o Android SDK 2.3, não o Android Studio 2.3. O problema parece ser que o emulador não consegue encontrar o DNS que meu computador está usando no momento, e a solução temporária é iniciar o emulador na linha de comando e especificar o servidor DNS. Qualquer que seja o problema ocorrido na época, deve ter reaparecido na versão mais recente do Android Studio.

A solução temporária descrita abaixo corrige o problema com o emulador acessando a Internet. No entanto, ele não corrige o problema que ocorre ao tentar executar o Android Device Monitor. Se o fizer, o emulador ficará offline, conforme descrito acima.

Observe que existem dois arquivos denominados "emulator.exe" no sdk - um em sdk \ tools e outro em sdk \ emulator. Qualquer um pode funcionar abaixo, mas eu uso o sob sdk \ emulator.

A primeira etapa é descobrir onde o SDK está localizado. Supondo que um nome de usuário "jdoe" e uma instalação padrão do Android Studio no Windows, o SDK provavelmente seja

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

A segunda etapa é determinar o nome do AVD (emulador) que você deseja executar. O comando

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

irá mostrar os nomes dos seus AVDs. No meu computador, ele mostra apenas um, Nexus_5X_API_25.

Para iniciar o emulador a partir da linha de comando com um servidor DNS especificado, use algo como o seguinte:

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

Nesse caso, 8.8.8.8 é um servidor de nome de domínio público do Google.

Os comandos acima podem ser reduzidos se você criar variáveis ​​de ambiente apropriadas e editar sua variável de ambiente PATH, mas recomendo cuidado ao fazer isso.

John Moore
fonte
Isso funcionou absolutamente para mim, mas eu gostaria que houvesse uma maneira de limpar o DNS fora da linha de comando.
JaviCasa
depois de pagar uma licença de 199 $ para o Windows Pro obter o Hyer-V e depois de descobrir que o emulador do visual studio não suporta google_api_services, encontrei esta solução que faz o emulador do Android conectar a Internet ... Sinto como: |
Monah
2
Isso funciona totalmente, mas inacreditável, ainda é um problema no Android Studio 3.0 (emulador 27.1.12). Talvez relacionado a ter adaptadores de rede com e sem fio no sistema com a conexão sem fio desativada?
Victor Rendina 23/03
Eu registrei um bug no Google e espero que eles analisem os comentários aqui e resolvam qualquer que seja o problema subjacente.
patas
@paws você poderia vincular o bug que arquivou? Quer estrelá-lo também!
Amitavk
56

A atualização do meu adaptador WIFI para resolver o DNS em 8.8.8.8 resolveu o problema para mim. Começou a acontecer após uma atualização da Apple que atrapalhou o endereço DNS.

insira a descrição da imagem aqui

Joao Gavazzi
fonte
13
Não se esqueça de reiniciar o emulador após fazer essa alteração, como sugere Ana Paula.
267 Jordan
1
Veja meu comentário acima sobre o uso do OpenDNS em vez do Google. stackoverflow.com/questions/42736038/…
Justin Noel
Não tem que ser 8.8.8.8 ou OpenDNS, qualquer servidor DNS de trabalho irá trabalhar
sudo
30

Simplesmente abra o AVD Manager e limpe os dados desse emulador para mim.

Hashim Zahid
fonte
1
Deve ter minha conexão wifi antiga em cache, porque eu mudei para outro local wifi e esse problema começou a acontecer. Limpei o AVD e reiniciei e ele pegou o wifi no novo local.
10138 Mike Onnick
27

Eu experimentei esse mesmo problema após a atualização. Ao abrir o navegador Chrome no emulador, não foi mais possível acessar o google.com.

Encontrei um post no SO que sugeria que o problema estava com o emulador tentando usar um adaptador de rede desconectado. Para mim, o problema estava ocorrendo quando eu estava conectado a uma LAN. Desabilitar o adaptador de LAN sem fio corrigiu o problema.

Para desativar o adaptador:

  1. Navegue para Conexões de rede
  2. Encontre o adaptador
  3. Clique com o botão direito e escolha desativar
bmul
fonte
2
Obrigado pela dica. Eu estava começando a suspeitar de algo assim desde que notei que a conexão via adaptador LAN com fio também resolveu o problema. Também deve ser possível corrigir esse problema alterando a prioridade dos dois adaptadores, mas de qualquer forma parece ser uma correção drástica. Por que o Google não pode simplesmente consertar os emuladores para usar a conexão que meu computador está usando? Como eu disse, esse não foi um problema antes de atualizar para o Android Studio 2.3. Por enquanto, continuarei com a outra solução em que especifico o servidor DNS.
John Moore
Obrigado. Eu tenho LAN e adaptador sem fio. Trabalhando após desativar o adaptador sem fio.
Plugie
Exatamente! Desliguei todos os adaptadores de rede do meu PC, excluindo meu adaptador WiFi, e isso funcionou. Obrigado.
Alexander.Iljushkin
21

Abra o emulador do Android e vá para os controles estendidos . Em seguida, vá para a configuração => proxy (guia) e desmarcada "Usar configuração de proxy HTTP do Android studuio".

AminRah
fonte
Por outro lado, tive que verificar novamente para fazer a Internet funcionar. :(
Sankalp
funcionou como um encanto, mas teve que reiniciar o emulador para pegar a configuração.
U84six
15

Resolvi limpar os dados do AVD Manager

Blasco73
fonte
2
Funciona para mim. No meu caso, estava usando o emulador com a API 22. Depois de "Limpar dados" e "Inicialização a frio agora", a conexão à Internet funciona bem, mas tive que reinstalar o aplicativo.
Akostha
14

Isso aconteceu comigo quando o emulador congelou e eu tive que matar o processo. O ícone do sinal sempre mostrava o pequeno "x" como na captura de tela e nenhuma conexão à Internet foi bem-sucedida.

A única coisa que ajudou foi desinstalar e reinstalar o emulador (não as imagens AVD)

No Android Studio:

Ferramentas-> Android -> Gerenciador de SDK Desmarque "Emulador do Android" e deixe-o desinstalar, depois verifique novamente e deixe-o instalar novamente.

Captura de tela

Patrick Favre
fonte
2
Teve exatamente o mesmo problema, fez isso e o problema não foi corrigido. Mas depois de reiniciar o computador inteiro, a internet agora está trabalhando no emulador.
Antogerva
ele está trabalhando para mim, minha situação .. reinstalar estúdio android i usado velhos meus arquivos do SDK
AGTHAMAYS
2
Esta é a única solução que funcionou para mim (em um Mac fyi)
vikzilla
Tenho que concordar que esta foi a única solução também funcionou em um mac!
Anoop Santhanam
13

Também estou enfrentando o mesmo problema, mas estou tentando resolver o problema usando várias postagens. Hoje eu descobri esse problema. A configuração do seu computador provavelmente é o problema, não o Android Studio e o Emulador do Android.

O problema está vindo da sua configuração de rede. Basta definir o servidor DNS primário como 8.8.8.8, o que resolverá o problema.

Swarup Daptari
fonte
9

[ATUALIZAÇÃO 2020] para usuários de Mac

  1. Preferências do Sistema
  2. Rede
  3. WiFi> Selecionar Avançado
  4. Na guia Avançar, escolha DNC
  5. Servidor DNS adicional 8.8.8.8

e você está pronto

Basil Mariano
fonte
8

Este foi um problema para mim na última vez em que o emulador se atualizou e na época desabilitou outros adaptadores de rede. Agora ele é recortado novamente, mas o único adaptador ativado é um único wifi, então não tenho nada para desativar.

O problema só reapareceu depois que eu atualizei por meio de um prompt as ferramentas do emulador para 26.1.1. Eu desinstalei e reinstalei o emulador através da guia Atualização do SDK Tools e, felizmente, a única opção ao instalar novamente agora é instalar o 26.0.3 (que parece estar funcionando bem).

O moral da história é ter muito cuidado com as atualizações do emulador .

Daniel Wilson
fonte
Funcionou para mim, tinha exatamente a mesma versão e, após a desinstalação, reinstalou o 26.0.3.
Sammy Patenotte
Esta solução funcionou para mim também! Eu tive que instalar o 26.0.3 do Android Studio 2.3. embora (a pré-visualização 3.0 mostrasse apenas 26.1.1.). Muito obrigado!
Attila Molnár
8

Lembrete : a conexão à Internet do emulador Android não funcionará se você ativar um sistema VPN no seu computador.

venda
fonte
7

Para mim, o problema foi causado quando levei meu laptop para casa sem reiniciar o emulador. Pelo que li, quando o emulador é iniciado, ele lê as configurações de DNS do seu PC e as utiliza. Quando eu estava na minha rede doméstica, minhas configurações de DNS do trabalho estavam falhando.
Então sim. Apenas reiniciar o emulador resolveu meu problema.

smithygreg
fonte
6

Eu tenho uma solução simples e permanente para esse problema no Windows.

Vá para a opção de rede e internet- >insira a descrição da imagem aqui

clique na opção Etherenet ou wifi (ao qual você está conectado) -> insira a descrição da imagem aqui

Clique na opção de adaptador de mudança -> insira a descrição da imagem aqui

Clique com o botão direito na rede à qual você se conectou. insira a descrição da imagem aqui

Uma caixa de diálogo será aberta e basta clicar na opção Versão Protocal da Internet (TCP / IPv4) . insira a descrição da imagem aqui

Outra caixa de diálogo será aberta e apenas negligenciará o primeiro conjunto sobre o endereço IP (manter como está definido) e clique no botão de opção Usar os seguintes endereços de servidor DNS: e digite 8.8.8.8 em Servidor DNS preferido: e 8.8. 4.4 no servidor DNS alternativo: insira a descrição da imagem aqui

Agora você pode abrir seu emulador sempre que tiver acesso à Internet nos emuladores Android.

Deepak N
fonte
Nenhuma das outras soluções funcionou para mim, mas esta funcionou! Como uma menção: eu estou no cabo LAN, então fiz as alterações nessa configuração em vez da conexão Wifi.
Zbarcea Christian
6

fechar o emulador e reabrir funcionou para mim

OS WINDOWS 10

IAMSTR
fonte
1
Isso funcionou para mim. Eu tentei reiniciar o telefone virtual, mas não foi suficiente. O problema pode ser desencadeado permitindo o emulador em execução através do hibernar. Obrigado.
Alexei
4

Após 10 dias de problemas, acabei de excluir tudo C:\Android\.android\e excluí todos os AVDs criados. Agora a internet parece funcionar bem.

Soluções Sparx it
fonte
4

Se o navegador Android puder acessar a Internet, você pode executar o emulador do terminal por este comando

vá para o caminho do SDK e depois

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

resolve seu problema de internet ...

Homem
fonte
4

Também houve um problema para mim, ao desativar o proxy nas configurações do Android Studio e executar o emulador com "Cold Boot Now", o problema foi resolvido.

FatalMan
fonte
3

Apenas recriar o emulador com outra API de destino funcionou para mim

Faheem
fonte
3

Estou no android studio 3.1 e aconteceu. Resolvido reiniciando o servidor adb

$ adb kill-server
$ adb start-server

Espero que ajude. Obrigado

surga
fonte
2

Eu enfrentei o mesmo problema e de repente no meu MAC. Depois de ter tentado de tudo, eu finalmente apaguei a pasta /Users/Philippe/.android e criei um novo emulador .

Phil
fonte
2

Talvez você defina um proxy para o Android Studio e o proxy não funcione. Tente sem proxy.

user6022289
fonte
2

Eu estava tendo o mesmo problema e resolvi com as etapas abaixo: -

Vá para a configuração do emulador e depois vá para

configuração-> Proxy-> Configure-o manualmente ou use Tick, use o simulador de proxy HTTP do Android Studio.

Naveen rana
fonte
2

Estou tendo o visual studio 2017, e este simples clique corrigiu um problema de internet no emulador do Android.

insira a descrição da imagem aqui

HO LI Pin
fonte
2

Por favor, acesse o link abaixo.

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

Emulador aberto, clique em Mais ... e, em seguida, clique em Configurações e Proxy. A partir daqui, você pode definir suas próprias configurações de proxy HTTP.


Digite o nome do host seguindo Executar> cmd> nome do host

Por fim, verifique o acesso à Internet dentro do emulador navegando no chrome ou no google.

Nota: a limpeza frequente de dados solucionará o problema. Siga todas as etapas

Avid Programmer
fonte
1

Eu também tive isso e resolvi criando um novo dispositivo virtual emulador Android e escolhi o Nexus 4 api 27. Antes de criar o dispositivo Pixel api 28, ele não estava funcionando mesmo após a recriação do dispositivo. Então, eu tentei uma configuração totalmente diferente e o Android Emulator tem conexão com a internet como esperado. Outras soluções não funcionaram para mim, mas não tentei tudo.

Renetik
fonte
1

Para mim, no OSX, foi por causa do uso de uma solução VPN de terceiros ... instala algum tipo de gancho de rede que os AVDs e Genymotion não conseguiram rotear. Teve que desinstalá-lo para que funcione corretamente. Funcionou bem em algumas redes e não em outras ... foi muito estranho ..

kenyee
fonte
1

Eu tive o mesmo problema no Windows 10. Acabei de acessar o Network & internet settings> Change adapter options> right-click on Wi-Fi and chose properties> Chose Internet protocol version 4 in the list and clicked properties> Turned on the "Use the following DNS server addresses" and filled the first part with "8.8.8.8" address. Problema resolvido!

Hasani
fonte
1

Se você estiver atrás de um proxy, o seguinte pode ser útil:

adb shell settings put global global_http_proxy_port YOUR_PROXY_PORT

adb shell settings put global global_http_proxy_host YOUR_PROXY_IP

reboot
narko
fonte