Heim  >  Artikel  >  Java  >  Wie pinge ich externe IPs von Android-Java-Anwendungen an?

Wie pinge ich externe IPs von Android-Java-Anwendungen an?

Barbara Streisand
Barbara StreisandOriginal
2024-11-13 13:59:02893Durchsuche

How to Ping External IPs from Android Java Applications?

Anpingen externer IPs von Android-Java-Anwendungen

Bei der Entwicklung einer Ping-Anwendung für Android zur Überprüfung der Netzwerkkonnektivität ist es wichtig, die Einschränkung zu berücksichtigen, nur lokale IPs anzupingen. Dieser Artikel befasst sich mit dem zugrunde liegenden Problem und bietet eine Lösung zur Erweiterung der Ping-Funktion auf externe Server.

Der in der ursprünglichen Frage geteilte Code zeigt die grundlegende Implementierung von Ping auf Android. Beim Versuch, externe Server anzupingen, ist dies jedoch nicht der Fall. Dies liegt daran, dass Android den direkten Netzwerkzugriff standardmäßig auf Hosts außerhalb des lokalen Netzwerks des Geräts beschränkt.

Um diese Einschränkung zu überwinden, wird ein Workaround mit nativen Systembefehlen eingesetzt. Die bereitgestellte Lösung nutzt Runtime.exec(), um den Befehl /system/bin/ping mit der gewünschten IP-Adresse auszuführen (z. B. 8.8.8.8 für Google DNS).

Hier ist der aktualisierte Code, der die Lösung enthält:

private boolean executeCommand(){
    System.out.println("executeCommand");
    Runtime runtime = Runtime.getRuntime();
    try {
        Process  mIpAddrProcess = runtime.exec("/system/bin/ping -c 1 8.8.8.8");
        int mExitValue = mIpAddrProcess.waitFor();
        System.out.println(" mExitValue "+mExitValue);
        return mExitValue == 0;
    } catch (Exception e) {
        e.printStackTrace();
        System.out.println(" Exception:"+e);
    }
    return false;
}

Durch die Verwendung dieses Ansatzes initiiert die MethodeexecuteCommand() den nativen Ping-Befehl, wartet auf dessen Abschluss und gibt einen booleschen Wert zurück Zeigt das Ping-Ergebnis an. Dadurch können externe Server angepingt werden, was eine umfassendere Bewertung der Netzwerkkonnektivität innerhalb der Android-Anwendung ermöglicht.

Das obige ist der detaillierte Inhalt vonWie pinge ich externe IPs von Android-Java-Anwendungen an?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn