Proxy que requiere autenticación con Android Emulator

¿Alguien ha logrado que el emulador de Android funcione detrás de un proxy que requiere autenticación?

Intenté configurar el argumento -http-proxy para

http://DOMAIN/USERNAME:PASSWORD@IP:PORT 

pero no tengo éxito

Intenté seguir los documentos sin ningún resultado. También probé la configuración -verbose-proxy , pero esto ya no parece existir.

¿Alguna sugerencia?

Logré hacerlo en el Emulador Adndroid 2.2.

 Go to "Settings" -> "Wireless & Networks" -> "Mobile Networks" -> "Access Point Names" -> "Telkila" 

Allí, establezca el nombre del host proxy en la propiedad “Proxy” y el puerto Proxy en la propiedad “Puerto”.

Parece que SDK 1.5 en adelante, el -http-proxy tampoco funciona. Lo que funcionó para mí es iniciar la imagen de Android en el emulador y luego, una vez que se está ejecutando Android, vaya a Home > Menu > Settings > Wireless Controls > Mobile Networks > Access Point Names y luego configure http proxy para el punto de acceso predeterminado .

Con la configuración proxy de APN en su lugar, puedo obtener el navegador del emulador para navegar por la web. Sin embargo, otras cosas como Maps todavía no funciona.

Recuerdo haber tenido el mismo problema: después de buscar en la web, encontré esta solución: desde la línea de comando,

 1. > adb shell 2. # sqlite3 /data/data/com.android.providers.settings/databases/settings.db 3. sqlite> INSERT INTO system VALUES(99,'http_proxy', 'proxy:port'); 4. sqlite>.exit 

EDITAR: respuesta editada para reflejar la última versión de Android.

Aparentemente, este problema solo se ejecuta con Android 2.x y Windows. Hay un error abierto aquí: http://code.google.com/p/android/issues/detail?id=5508&q=emulator%20proxy&colspec=ID%20Type%20Status%20Owner%20Summary%20Stars

  1. Busque el archivo androidtool.cfg en C:\Documents and Settings\YOUR USER NAME\.android\

  2. Agregue esta línea:

     http.proxyLogin=USER@PASSWORD 
  3. Guarde el archivo e intente abrir el SDK de Android.

Para configurar el servidor proxy, debemos establecer la configuración de APNS. Para hacer esto:

  • Ir a Configuración
  • Ir a redes inalámbricas y redes
  • Ir a redes móviles
  • Ir a los nombres de los puntos de acceso. Use el menú para agregar nuevos apns
  • Establecer Proxy = localhost
  • Establezca Port = puerto que está utilizando para hacer un servidor proxy, en mi caso es 8989

Para configurar Name y apn aquí está el enlace:

De acuerdo con su tarjeta SIM, puede ver la tabla

Esto funcionó para mí: http://code.google.com/p/android/issues/detail?id=5508#c39
Aparentemente hay un error en el emulador que te obliga a usar la dirección IP del proxy en lugar del nombre …

Jay, aunque ese sería el lugar ideal para esta información, no se ha actualizado para 2.1. A continuación, enumeraré los métodos que actualmente NO funcionan para el emulador 2.1.

El argumento http-post no funciona para el emulador 2.1. Establecer un proxy en la lista APN dentro del emulador 2.1 no funciona. Insertar el proxy directamente en la tabla del sistema mediante sql-lite no funciona con 2.1.

De hecho, la ÚNICA manera de hacer que el navegador se conecte a Internet a través del emulador que he encontrado en 2.1, es NO usar un proxy en absoluto. Realmente espero que esto se resuelva pronto, ya que hay muchas personas con este mismo problema.

  1. Inicie el símbolo del sistema.

  2. Ve a la carpeta donde está ubicado tu emulador. En general, estará en la carpeta de herramientas del SDK de Android.

  3. Luego usa el siguiente comando:

     emulator -avd  -http-proxy : 

    Al usar esto, podremos acceder a internet usando el navegador.

Usando el emulador Android SDK 1.5 con proxy en Eclipse 3.45

Vaya a Package Explorer -> Haga clic derecho en su proyecto de Android -> Ejecutar como-> Ejecutar configuraciones.

Debajo de la aplicación de Android en la columna de la izquierda, seleccione su proyecto -> en la columna de la derecha, donde verá Android | Objetivo | Pestañas comunes ->

Seleccione Destino -> en la parte inferior “Opciones de línea de comando del emulador adicional” ->

-http-proxy http://www.gateProxy.com:1080 -debug-proxy http://www.gateProxy.com:1080

-> Ejecutar / Cerrar.

No he usado el emulador de Android pero he establecido la variable de entorno $ http_proxy para perl y wget y algunas herramientas de cygwin en Windows. Eso podría funcionar para Android, pero la barra en el nombre de dominio parece ser un problema potencial. Sé que traté de tener mi dominio “GLOBAL” allí, pero terminé sacándolo y quedándome con: http://$USER:password@www-proxy.company.com:80

Sin embargo, un problema con el que me toco mucho es a los progtwigs a los que no se les puede decir que usen el proxy para consultas DNS. En los casos en los que no siempre recibo un nombre de host no encontrado. Me gustaría encontrar un resolvedor DNS local que pueda usar el proxy para todos los progtwigs que no lo harán.

Pude ver el tráfico con un sniffer HTTP en lugar de un proxy. Usé HTTPScoop, que es una aplicación pequeña y agradable.

También lo bueno de usar HTTPScoop es que también puedo ver el tráfico en mi dispositivo real cuando activo el uso compartido de Internet y hago que mi teléfono use el wifi de mi Mac. Este es un buen negocio para depurar lo que sucede en el teléfono y en el emulador.

De esta forma, no importa qué emulador uses, porque el sniffer ve el tráfico independiente del emulador, dispositivo, configuración del comstackdor, etc.

Explicaré todos los pasos:

  1. Vaya a la configuración en el emulador de Android> Inalámbrico y red> Red móvil> Punto de acceso> Telkilla> y aquí haga los ajustes necesarios como proxy, puerto, etc.

Creo que ahora todo está claro sobre la configuración del proxy …

Para Android2.3.3 Settings-> Wireless & Networks-> MobileNetworks-> AccessPointNames-> Telkila-> configure el Proxy y el Puerto aquí (xx.xx.xx.xx y puerto)

Tuve el mismo problema cuando uso el siguiente comando:

 emulator-x86.exe -http-proxy domain\user:password@proxyIP:port -avd MyAVD 

Recibí el error de autenticación del proxy.

Finalmente, tuve que eludir la autenticación proxy NTLM utilizando el Cntlm aquí:

http://sourceforge.net/projects/cntlm/

Y luego de simplemente configurar el cntlm.ini, utilizo el siguiente comando:

 emulator-x86.exe -http-proxy 127.0.0.1:3128 -avd MyAVD 

y funciona 🙂

Con las nuevas versiones de Android Studio y su emulador, es una tarea fácil.

Presione el botón “Más” del emulador, seleccione Configuración -> pestaña Proxy. Todas las configuraciones necesarias están ahí.

enter image description here