Frage

Ich bin ein Anfänger auf Android-Plattform, und ich möchte eine tracerouting App bauen. Das sind also einige meiner Abfragen, möchte ich fragen:

  1. Ist es möglich, eine solche Anwendung in Android zu machen? wenn möglich, leite mich dann auf die Art und Weise, dass ich folgen.

  2. Does Android Unterstützung niedriges Niveau Programmierung ICMP-Pakete zu erfassen? oder brauche ich eine Art von JAR (Java) oder einigen anderen Bibliotheken hinzufügen, diese Anwendung zu unterstützen.

  3. In Java gibt es JPCAP und docjar etc Art von Bibliotheken, die in unserer IDE oder Eclipse, so dass Java-Unterstützung für die Herstellung dieser Art von api importieren können?

brauche ich wertvolle Anregungen.

War es hilfreich?

Lösung

Der einfachste Weg, die ich denken kann ist, einfach zu überprüfen für die traceroute Linux-Anwendung, führen Sie es aus, und analysieren seine Ausgabe.

Android volle Netzwerkunterstützung hat jedoch Java verfügbar macht keine Schnittstelle die IP-Header zu ändern. Daher ICMP-Pakete manuell Crafting der Frage ist aus (JPCAP keine Hilfe da ist, da es auf libpcap beruht, die ich Ihnen nicht auf einer Vanille-Installation finden annehmen wird).

Eine weiterer möglich Lösung ist, die NDK zu verwenden und eine kleine Bibliothek, dass Griffe der Low-Level-Zahl Knirschen erstellen. Allerdings bin ich mir nicht sicher, ob das NDK Sie Gebrauch setsockopt erlauben würde.

Andere Tipps

Es ist ziemlich spät - aber jemand könnte es sehen. Ich fand dieses und es funktionierte für mich: https://github.com/olivierg13/TraceroutePing

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top