Wireless API for Linux in C or Java

2020-02-25 23:50发布

问题:

my team and I are working in a project based on the drone Parrot API. We are trying to find an api to write a small program which can scan the wireless network and selects the drone ESSID. Our main language is C but Java is also appreciated.

I tried to look if exist any API for the iwlist/iwconfig command but i did not find anything. Can someone help me plz? Any example (code sample) will also be appreciated.

Gracias

回答1:

With newer kernels the framework for managing wireless cards is called nl80211. It's netlink based, so you can use libnl to issue commands and parse answers. More information:

http://wireless.kernel.org/en/developers/Documentation/nl80211

Currently iw is the command line utility that utilizes nl80211, so you can list available hardware, scan, etc:

http://linuxwireless.org/en/users/Documentation/iw

Its source code is easy to study and reuse in your own project, just check out their git repo.



回答2:

No API but you can try: Excecute iwconfig from a java application

You can also try http://kosmosisland.com/island/david/kosmos-island-wireless.php . They have a Java Applet (with source) that monitors the Wireless Link. You can see how they did it.

Gustavo