11 votos

¿Cómo se configura el proxy WIFI a través de adb shell?

Genymotion 2.2 y Android 4.0

Quiero establecer un proxy HTTP global en Android, y todas las aplicaciones pasarán por este proxy.

Ahora sólo puedo hacer esto en el GUI de la siguiente manera: Wi-Fi -> WiredSSID -> Modificar la red -> mostrar las opciones avanzadas

¿Hay alguna manera de configurar el proxy WIFI vía adb shell?

He buscado en Google y he intentado de varias maneras como:

 1. export http_proxy xxx
 2. setprop net.gprs.http-proxy xxx
 3. sqlite3 /data/data/com.android.providers.settings/databases/settings.db; INSERT INTO system VALUES(99,'http_proxy','xxx.xxx.xxx.xxx:xxxx')

y nada funcionó.

36voto

Chad Scira Puntos 1839

En mis dispositivos Android 7 y 8:

adb shell settings put global http_proxy <address>:<port>

Sin embargo, parece que el ajuste se pierde al reiniciar.

3 votos

También funciona en un dispositivo Android 6

2 votos

Existen comandos para restablecer la configuración del proxy stackoverflow.com/a/47476009/3278855

5voto

Gbla Kbla Puntos 11

en el dispositivo maestro:

  1. Configurar el proxy wifi manualmente
  2. adb pull /data/misc/wifi/ipconfig.txt

en el segundo dispositivo:

  1. adb shell svc wifi disable
  2. adb push ipconfig.txt /data/misc/wifi/ipconfig.txt
  3. adb shell svc wifi enable

1voto

Milo Puntos 71

He publicado esto en este La pregunta de StackOverflow y parece que funcionaría para lo que estás tratando de hacer.

Desarrollé una aplicación que te permitirá cambiar el proxy de adb para usarlo en mi propia configuración de automatización y ha funcionado de forma fiable para mí hasta ahora. Puedes mirar la fuente y descargar el apk desde github . Todo lo que tienes que hacer es instalarlo en el dispositivo que quieras para automatizar los cambios de proxy y luego ejecutar un comando adb para que la aplicación establezca la configuración de tu proxy. Más detalles sobre cómo usarlo están en el LÉAME en github.

0 votos

Durante un tiempo utilizamos un método como éste, pero para quien nos lea, sólo funciona para Android <6.

0 votos

@Crummy tal vez era cierto en ese momento. Ahora funciona para Android 6.0 y 7.0.

1voto

hncl Puntos 591

Para eliminar el proxy, adb shell settings put global http_proxy :0 No estoy seguro de si hay alguna configuración por defecto a través de la interfaz gráfica de usuario en la configuración de Android, estoy usando un teléfono Android lollipop OS así que no hay muchas opciones allí. Para comprobar que has configurado el proxy incorrecto, si obtienes errores como Caused by: java.net.ConnectException: failed to connect to /127.0.0.1 (port 1337): connect failed: ECONNREFUSED (Connection refused) una causa muy probable sería un poder equivocado.

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X