c++ - 如何使用D-Bus获取设备名称?

标签 c++ linux dbus bluez qtdbus

我在 Linux 上用 C++ 开发了一个应用程序,它与蓝牙设备(例如蓝牙 socket 或扬声器)进行交互。 我使用 D-Bus 命令获取配对设备列表:

dbus-send --system --dest=org.bluez --print-reply $BTADAPTER org.bluez.Adapter.ListDevices

它返回:

method return sender=:1.0 -> dest=:1.90 reply_serial=2
   array [
      object path "/org/bluez/489/hci0/dev_00_1F_C5_75_45_5E"
      object path "/org/bluez/489/hci0/dev_F0_13_C3_00_A1_08"
      object path "/org/bluez/489/hci0/dev_00_11_12_30_76_21"
      object path "/org/bluez/489/hci0/dev_00_11_12_30_76_22"
      object path "/org/bluez/489/hci0/dev_00_11_12_30_76_23"
      object path "/org/bluez/489/hci0/dev_00_11_12_30_76_24"
   ]

这很棒,但我不仅需要 MAC,还需要设备名称(例如“linvor”或“GT-I9300”)。

请帮助我找到正确的方法来获取这些名称。

最佳答案

尝试以下命令: dbus-send --system --type=method_call --print-reply --dest=org.bluez "/org/bluez/489/hci0/dev_00_1F_C5_75_45_5E"org.bluez.Device.GetProperties ,您将获得有关该设备的所有信息

关于c++ - 如何使用D-Bus获取设备名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19094897/

相关文章:

c++ - 从 C++ 中的 Dll 中提取

php - zip -P 命令无法创建密码保护 zip 文件

linux - 如何允许其他人访问我本地的 gitlab?

linux - Git 自动更改文件扩展名

python-2.7 - 适用于 Windows 的 Dbus-Python

c - dbus - 在接口(interface) NULL 上将对象注册到远程

dbus - 如何在 dbus-send 中使用变体字典 (`a{sv}` )

c++ - Qt 应用程序 : Simulating modal behaviour (enable/disable user input)

c++ - 为什么我不能使用 std::vector<char> 在 C++ 中读取文件中的所有字符

c++ - MPI:更改 CMakelist 中的处理器数量