porque - manual de programacion android pdf
El emulador de Android no puede acceder a Internet (30)
Cambie la dirección DNS de su red a 8.8.8.8:
Mac OS X:- Abra "Preferencias del sistema"
- Haga clic en "Red"
- Seleccione la red a la que está conectada su computadora y haga clic en "Avanzado"
- Seleccione "DNS", seleccione el botón "+", escriba "8.8.8.8"
- Seleccione "Aceptar" y "Aplicar"
https://developers.google.com/speed/public-dns/docs/using
Después de eso, cierre el emulador y vuelva a iniciarlo.
Sé que se han hecho preguntas similares antes, pero mi problema es nuevo solo después de instalar Android Studio 2.3, la última versión en marzo de 2017. Tengo varios años de experiencia en el desarrollo de aplicaciones de Android, y nunca antes había encontrado este problema. Después de actualizar a la versión 2.3 de Android Studio, mi emulador ya no puede acceder a Internet. Incluso desinstalé / reinstalé Android Studio 2.3 desde cero y creé un nuevo emulador, y todavía recibo el mismo error. Este no es un problema de la aplicación. Ni siquiera puedo acceder a Internet desde Chrome, y no tuve este problema la semana pasada. El mensaje que recibo dice que no se pudo encontrar la dirección DNS del servidor: DNS_PROBE_FINISHED_BAD_CONFIG. Lo único que ha cambiado en mi computadora en la última semana es la nueva versión de Android más posiblemente actualizaciones para Windows 10. Y sí, mi computadora tiene acceso a Internet. A continuación se muestra una imagen de mi emulador cuando intento usar Chrome para buscar "Google".
Abra el emulador de Android y vaya a los controles extendidos . Luego vaya a la configuración => proxy (Tab) y desmarque "Usar configuración de proxy HTTP de Android studuio".
Después de 10 días de problemas,
C:/Android/.android/
todo de
C:/Android/.android/
y eliminé todos los AVD creados.
Ahora internet parece funcionar bien.
Después de probar muchas de estas soluciones, iba a eliminar mi AVD actual y volver a hacerlo, pero cuando hice clic en la flecha hacia abajo en el AVD, noté "Cold Boot Now".
Por capricho lo intenté. ¡He aquí que mi emulador tiene conectividad a Internet nuevamente!
EDITAR: Ok, para aquellos que dicen por qué no simplemente borrar datos y reiniciar. ¿Reformatea su PC cada vez que la reinicia? Limpiar datos en el emulador es como hacer un restablecimiento de fábrica a un teléfono o formatear el disco duro de su PC y reinstalar su sistema operativo. Es innecesario a menos que los datos estén totalmente corruptos.
Cuando apaga el emulador y lo reinicia, es como poner su PC en modo de hibernación o suspensión. La memoria no se borra, se guarda.
Hacer un arranque en frío es lo mismo que reiniciar su teléfono o reiniciar su PC. Restablece la memoria y permite que las cosas se recarguen. Esto permite que la emulación de red comience con una memoria limpia y se conecte correctamente.
Por lo tanto, no borres tus datos. Solo una bota fría. Si aún así no funciona, límpielo, pero guárdelo como último recurso.
El mismo problema de conectividad de red para mí en el emulador de Android V 7.1.1 , luego disminuí la versión de Android debajo de 7.1.1 en mi emulador de Android y luego funciona bien.
Encontré una solución temporal en un viejo subproceso de desbordamiento de pila en Actualizado a SDK 2.3: ahora no hay emuladores con conectividad . Tenga en cuenta que este hilo habla sobre Android SDK 2.3, no Android Studio 2.3. El problema parece ser que el emulador no puede encontrar el DNS que mi computadora está usando actualmente, y la solución temporal es iniciar el emulador desde la línea de comandos y especificar el servidor DNS. Cualquier problema ocurrido en ese momento debe haber reaparecido en la última versión de Android Studio.
La solución temporal que se describe a continuación soluciona el problema con el emulador que accede a Internet. Sin embargo, no soluciona el problema que ocurre al intentar ejecutar Android Device Monitor. Al hacerlo, el emulador se desconectará como se describió anteriormente.
Tenga en cuenta que hay dos archivos llamados "emulator.exe" en el sdk: uno en sdk / tools y otro en sdk / emulator. Cualquiera de los dos podría funcionar a continuación, pero uso el que está debajo de sdk / emulator.
El primer paso es encontrar dónde se encuentra el SDK.
Suponiendo un nombre de usuario de "jdoe" y una instalación predeterminada de Android Studio en Windows, el SDK es más probable en
C:/Users/jdoe/AppData/Local/Android/sdk
El segundo paso es determinar el nombre del AVD (emulador) que desea ejecutar.
El comando
C:/Users/jdoe/AppData/Local/Android/sdk/emulator/emulator.exe -list-avds
mostrará los nombres de sus AVD. En mi computadora, muestra solo uno, Nexus_5X_API_25.
Para iniciar el emulador desde la línea de comandos con un servidor DNS especificado, use algo como lo siguiente:
C:/Users/jdoe/AppData/Local/Android/sdk/emulator/emulator.exe -avd Nexus_5X_API_25 -dns-server 8.8.8.8
En este caso, 8.8.8.8 es un servidor de nombres de dominio público de Google.
Los comandos anteriores se pueden acortar si crea variables de entorno apropiadas y edita su variable de entorno PATH, pero le recomiendo que tenga cuidado al hacerlo.
Estaba teniendo el mismo problema y resolví con los siguientes pasos: -
Vaya a la configuración del emulador y luego vaya a
configuración-> Proxy-> O configúrelo manualmente o use Tick con el simulador de proxy HTTP de Android Studio.
Esto fue un problema para mí la última vez que el emulador se actualizó a sí mismo y en ese entonces deshabilitar otros adaptadores de red lo arregló. Ahora está recortado nuevamente, pero el único adaptador que está habilitado es un solo wifi, así que no tengo nada que deshabilitar.
El problema solo reapareció después de que actualicé mediante un mensaje las herramientas del emulador a 26.1.1. Desinstalé y reinstalé el emulador a través de la pestaña de actualización de SDK Tools y, afortunadamente, la única opción al instalar nuevamente en este momento es instalar 26.0.3 (que parece estar funcionando bien).
La moraleja de la historia es tener mucho cuidado con las actualizaciones del emulador .
Esto me sucedió cuando el emulador se congeló y tuve que matar el proceso. El ícono de la señal siempre mostraba la pequeña "x" como en la captura de pantalla y ninguna conexión a Internet fue exitosa.
Lo único que ayudó fue desinstalar y reinstalar el emulador (no las imágenes AVD)
En Android Studio:
Herramientas-> Android -> SDK Manager Desmarque "Android Emulator" y deje que se desinstale, luego verifique nuevamente y vuelva a instalar.
Estoy en Android Studio 3.1 y sucedió. Lo resolvió reiniciando el servidor adb
$ adb kill-server
$ adb start-server
Espero eso ayude. Gracias
Experimenté este mismo problema después de la actualización. Al abrir el navegador Chrome en el emulador, ya no se podía acceder a google.com.
Encontré una publicación en SO que sugería que el problema estaba en que el emulador intentaba usar un adaptador de red desconectado. Para mí, el problema ocurría cuando estaba conectado a una LAN. Deshabilitar el adaptador LAN inalámbrico solucionó el problema.
Para deshabilitar el adaptador:
- Navega hasta Conexiones de red
- Encuentra el adaptador
- Haga clic derecho y elija deshabilitar
Finalmente, tuve que eliminar la carpeta
.android
y crear una nueva.
Parece que los archivos se corrompieron
Me he enfrentado al mismo y repentino problema en mi MAC. Después de haber intentado todo, finalmente eliminé la carpeta /Users/Philippe/.android y creé un nuevo emulador .
Obtuve una solución simple y permanente para este problema en Windows.
Vaya a la opción de red e internet- >
haga clic en la opción Etherenet o wifi (para la cual está conectado) ->
Haga clic en la opción de cambio de adaptador ->
Haga clic derecho en la red a la que se ha conectado.
Se abrirá un cuadro de diálogo y simplemente haga clic en la opción de versión protocal de Internet (TCP / IPv4) .
Se abrirá otro cuadro de diálogo y simplemente descuidará el primer conjunto sobre la dirección IP (Mantener como está configurado) y haga clic en el botón de opción Usar las siguientes direcciones del servidor DNS: e ingrese como 8.8.8.8 en el servidor DNS preferido: y 8.8. 4.4 en el servidor DNS alternativo:
Ahora puede abrir su emulador cuando lo desee y obtendrá Internet en los emuladores de Android.
Para mí en OSX, se debió al uso de una solución VPN de terceros ... instala algún tipo de enlace de red que AVD y Genymotion no pudieron enrutar. Tuve que desinstalarlo para que funcione correctamente. Funcionó bien en algunas redes y no en otras ... fue muy raro ...
Para mí, el problema era que mi computadora estaba conectada a una VPN. Una vez que lo desconecté, comenzó a funcionar en el emulador.
Para mí, el problema fue causado cuando llevé mi computadora portátil a casa sin reiniciar el emulador.
Por lo que he leído, cuando se inicia el emulador, lee la configuración de DNS de su PC y la usa.
Cuando estaba en mi red doméstica, la configuración de DNS de mi trabajo fallaba.
Así que sí.
Solo reiniciar el emulador resolvió mi problema.
Simplemente abra el Administrador de AVD y borre los datos de ese emulador que funciona para mí.
Solo recrear el emulador con otra API objetivo funcionó para mí
Tal vez configuró un proxy para Android Studio y el proxy no funciona. Probar sin proxy.
También estoy enfrentando el mismo problema, pero estoy tratando de resolver el problema usando varias publicaciones. Hoy descubrí este problema. La configuración de su computadora es probablemente el problema, no Android Studio y el Emulador de Android.
El problema proviene de la configuración de su red. Simplemente https://developers.google.com/speed/public-dns/docs/using en 8.8.8.8, lo que resolverá el problema.
También tuve esto y lo resolví creando un nuevo dispositivo virtual de emulador de Android y elegí Nexus 4 api 27. Antes de crear el dispositivo Pixel api 28, y no funcionaba incluso después de recrear el dispositivo. Así que probé una configuración totalmente diferente y Android Emulator tiene conexión a Internet como se esperaba. Otras soluciones no funcionaron para mí, pero no lo intenté todo.
Tuve el mismo problema con mi emulador, hice todo lo anterior pero nada funcionó. Cambiar la puerta de enlace predeterminada en mi Panel de control -> Centro de redes y recursos compartidos -> Configuración de conexión de área local de: 192.168.1.119 a 192.168.1.1 funcionó por mí. No tengo mucha idea de cómo funciona esta dirección IP, pero tal vez ahorrará tiempo y frustración a alguien.
Tuve el mismo problema en Windows 10. Simplemente fui a
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 resuelto!
si el navegador de Android puede acceder a Internet, puede ejecutar el emulador desde la terminal con este comando
ir a la ruta del SDK y luego
$ / tools / emulator -avd Nexus_5X_API_23 -netdelay none -netspeed full
resuelve tu problema de internet ...
Consejos profesionales: uso de AVD con dnsmasq en Linux
Para comprenderlo, lea Configurar la red de Android Emulator desde Android Studio.
El loopback del dispositivo emulado es
127.0.0.1
y se puede acceder al loopback del host desde el dispositivo emulado desde
10.0.2.2
.
Al inicio, el dispositivo emulado configuró su servidor de nombres DNS seleccionando los del host en
/etc/resolv.conf
.
Pero el punto es que si está usando dnsmasq
, you set
servidor de nombres 127.0.0.1
in
/ etc / resolv.conf` para que el dispositivo emulado llegue a su propio loopback donde no se está ejecutando nada en lugar del host loopback donde hay un servidor DNS en ejecución .
Para resolver eso, agregue
-dns-server
cuando ejecute AVD desde la CLI.
Por ejemplo:
-
Cloudflare DNS:
~/Android/Sdk/emulator/emulator -avd Nexus_9_API_23 -dns-server 1.1.1.1
-
Dnsmasq del host:
~/Android/Sdk/emulator/emulator -avd Nexus_9_API_23 -dns-server 1.0.2.2
Recordatorio : la conexión a Internet del emulador de Android no funciona si enciende un sistema VPN en su computadora.