我的团队和我正在基于无人机Parrot API的项目中工作。我们正在尝试找到一个API,以编写一个可以扫描无线网络并选择无人机ESSID的小程序。我们的主要语言是C,但Java也受到赞赏。
我试图查看iwlist / iwconfig命令是否存在任何API,但没有找到任何东西。有人可以帮我吗?任何示例(代码示例)也将不胜感激。
格拉西亚斯
使用较新的内核,用于管理无线卡的框架称为 nl80211 。它基于netlink,因此您可以使用 libnl 发出命令并解析答案。更多信息:
http://wireless.kernel.org/en/developers/Documentation/nl80211
当前, iw 是利用nl80211的命令行实用程序,因此您可以列出可用的硬件,扫描等:
http://linuxwireless.org/en/users/Documentation/iw
它的源代码很容易学习,并且可以在您自己的项目中重复使用,只需查看其git repo。