我在 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/