2021-10-19

Linux系统中WiFi状态获取

一、Linux系统中和WiFi相关的命令

  1. iwconfig
    iwconfig主要用于系统配置无线网络设备和显示无线网络信息
  2. nmcli
    nmcli主要用于配置无线网卡,设置无线网卡信息
    例如:
    nmcli radio wifi on #打开WiFi开关
    nmcli radio wifi off #关闭WiFi开关
    nmcli c show #显示网络连接

二、Dbus的使用
1. Dbus
常用的一个工具是d-feet,可以查看系统总线(System Bus)和会话总线(Session Bus) 详细信息。系统总线(System Bus)用于系统和应用通信,会话总线(Session Bus)用于应用之间通信。
2.工具-Qt
与QDBus的一个接口相连接,主要用到的是QDBusInterface类,详细用法可以查看Qt助手。QDBusInterface是一个通用访问器类,用于对远程对象进行调用、连接到远程对象导出的信号以及获取/设置远程属性的值。

QDBusInterface remoteApp( "com.example.Calculator", "/Calculator/Operations",
                            "org.mathematics.RPNCalculator",
                            QDBusConnection &connection = QDBusConnection::sessionBus());
QDBusReply<int> reply = remoteApp.call( "PopOperand" );

(1)创建对象。使用给定的连接,在服务服务路径上的对象上创建与接口接口关联的动态QDBusInterface对象。
(2)接收Dbus信号。QDBusReply对象是QDBusMessage对象的子集,表示方法调用的应答。

3.WiFi使能接口
d-feet的系统总线(System Bus)中NetworkManager中的WirelessEnable
2021-10-19利用QtDBus编写函数获取WirelessEnable的值,从而可以得到wifi打开或关闭的状态。

上一篇:2021-10-31


下一篇:2021-10-29