2009-11-20 9 views
2

J'essaie d'obtenir le SSID de mon périphérique de réseau sans fil en Java. J'ai essayé les didacticiels officiels du réseau http://java.sun.com/docs/books/tutorial/networking/nifs/retrieving.html mais getDisplayName() getName() ne retourne pas le SSID. Existe-t-il un moyen d'obtenir un SSID exact? En outre, j'essaye également de lire la force de signal de wifi de tous mes dispositifs de réseau et ne pourrais pas trouver un moyen de le faire. Quelqu'un peut-il s'il vous plaît me diriger d'où obtenir toutes ces informations (tutoriels, exemples de code, etc)?Obtenir le SSID et d'autres informations d'un réseau sans fil en Java

Merci

Répondre

0

Vous avez vu ce jWlanScan

+2

Oui! Mais cela semble dépendant de la plateforme. Il utilise également une extension dll. Je suis à la recherche de quelque chose qui est totalement java (pas de dlls spécifiques à Windows) – newbie

+0

Les utilisateurs 64 bits peuvent obtenir l'erreur suivante: "Impossible de charger .dll 32 bits sur une plate-forme AMD 64 bits" en essayant de utilise la bibliothèque. – Axoren

1

Cela ne peut pas être fait en utilisant Java pur. L'API Java peut vous prendre aussi bas que le niveau NetworkInterface dans la pile réseau, mais pas plus bas. Lorsque vous êtes connecté à un réseau WiFi, tous les SSID, handshaking et de sécurité sont effectués à des niveaux inférieurs à celui-ci - à savoir, votre pilote dépendant de la plate-forme. L'API Java (à partir de Java7) ne vous permet pas de vous rapprocher de cette information; vous devrez utiliser un code dépendant de la plateforme pour cela.

-1

Ceci est exemple de code où SSID sans fil connecté en cours est renvoyé par cmd

ProcessBuilder builder = new ProcessBuilder("cmd.exe", "/c", "netsh wlan show interfaces");  
builder.redirectErrorStream(true); 
Process p = builder.start(); 

BufferedReader r = new BufferedReader(new InputStreamReader(p.getInputStream())); 
String line; 
while (true) { 
    line = r.readLine(); 
    if (line.contains("SSID")){ 
     // do something 
    } 
} 
+0

La ligne ne peut pas être lue, renvoie nullpointerexception –

+0

Ce code renvoie 'NullPointerException'. –