2012-01-19 48 views
5

En mi dispositivo Android tengo conexiones de red Ethernet y Wifi.
Lo que quiero implementar es que quiero verificar si WiFi y Ethernet ambas conexiones están activas al mismo tiempo, entonces quiero deshabilitar la red WiFi y mantener la conexión Ethernet activada.Interfaz Android con conexión Ethernet

Estoy usando android WifiManager y BroadcastReceiver android.net.conn.CONNECTIVITY_CHANGE para comprobar el estado de Wifi conectado/desconectado y también para habilitar/deshabilitar la red wifi.

Pero no puedo verificar el estado de la conexión Ethernet y tampoco puedo habilitar/deshabilitar la conexión Ethernet.

Para verificar la conexión Ethernet estado Estoy leyendo el archivo del sistema '/ sys/class/net/eth0' que me está devolviendo Corregir el estado de Ethernet. Pero para habilitar/deshabilitar Ethernet no puedo averiguar cómo hacerlo.

Tengo opciones de conexión de Ethernet en el menú Configuración provisto por el Android desde donde podemos configurar la conexión Ethernet del dispositivo.

En el ConnectivityManager hay una API getActiveNetworkInfo que solo devuelve la interfaz de red de conexión actual, pero quiero recuperar la lista de todas las interfaces conectadas desde donde podemos conectarnos a Internet.

¿Hay algún servicio ejecutándose en Android que pueda darme acceso para habilitar/deshabilitar la conexión Ethernet y también API para obtener el estado de conexión Ethernet?

Gracias.

+0

¿Puedes cambiar el estado de Ethernet y la dirección IP? ¿cómo? – Smile2Life

+0

¿Ha hecho usted habilitar/deshabilitar la conexión de Ethernet progrmáticamente? Fue en un dispositivo rooteado o posible con un dispositivo no rooteado. – Manmohan

Respuesta

3

Una forma de archivarlo,
El estado actual de Ethernet del dispositivo Android se ha actualizado en el archivo /sys/class/net/eth0/operstate mediante el sistema operativo Android. Necesitamos leer este archivo para obtener el estado.

El archivo contendrá la cadena UP si Ethernet está activo en la cadena DOWN si Ethernet está inactivo.

Lo intenté de esta manera y está funcionando para mí.

Pero no estoy seguro de si funcionará en todos los dispositivos con todas las versiones de Android.

+0

¿Cómo se conecta a Ethernet mediante programación? Cualquier código por favor? @A_user –

+0

¿Ha confirmado que escribir valor en este archivo habilitará/deshabilitará Ethernet? – Yeung

+0

No escribimos en este archivo, leemos este archivo para obtener el estado actual de Ethernet. La parte de escritura la realiza el SO. – User7723337

Cuestiones relacionadas