6 Stimmen

Android-Schnittstellen mit Ethernet-Anschluss

Auf meinem Android-Gerät habe ich sowohl Ethernet- als auch Wifi-Netzwerkverbindungen.
Was ich implementieren möchte, ist, dass ich überprüfen möchte, ob Wifi und Ethernet beide Verbindungen gleichzeitig aktiv sind, dann möchte ich das Wifi-Netzwerk deaktivieren und die Ethernet-Verbindung eingeschaltet lassen.

Ich verwende Android WifiManager und BroadcastReceiver android.net.conn.CONNECTIVITY_CHANGE zum Überprüfen des Wifi-Status Verbunden/Trennt und auch zum Aktivieren/Deaktivieren des Wifi-Netzwerks.

Aber ich kann den Status der Ethernet-Verbindung nicht überprüfen und ich kann die Ethernet-Verbindung auch nicht aktivieren/deaktivieren.

Zum Überprüfen des Ethernet-Verbindungsstatus lese ich die Systemdatei '/sys/class/net/eth0', die mir den korrekten Ethernet-Status zurückgibt. Aber für das Aktivieren/Deaktivieren von Ethernet kann ich nicht herausfinden, wie man es macht.

Ich habe Ethernet-Verbindungsoptionen im Einstellungsmenü von Android, über die wir die Ethernet-Verbindung des Geräts konfigurieren können.

In der ConnectivityManager es gibt eine API getActiveNetworkInfo die nur die aktuell verbundene Netzwerkschnittstelle zurückgibt, aber ich möchte die Liste aller angeschlossenen Schnittstellen abrufen, von denen aus wir eine Verbindung zum Internet herstellen können.

Gibt es irgendeinen Dienst, der auf Android läuft, der mir den Zugang zum Aktivieren/Deaktivieren der Ethernet-Verbindung ermöglicht und auch eine API, um den Status der Ethernet-Verbindung zu erhalten?

Gracias.

5voto

User7723337 Punkte 11429

Eine Möglichkeit, sie zu archivieren,
Aktueller Ethernet-Status des Android-Geräts wird in der Datei aktualisiert /sys/class/net/eth0/operstate durch das Android-Betriebssystem. Wir müssen diese Datei lesen, um den Status zu erhalten.

Die Datei enthält eine Zeichenkette UP wenn Ethernet aktiv ist sonst string DOWN wenn das Ethernet ausgefallen ist.

Ich habe diese Methode ausprobiert, und sie funktioniert bei mir.

Aber ich bin nicht sicher, ob es auf allen Geräten mit allen Android-Versionen funktioniert.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X