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

问题描述:

我在Linux上用C++开发应用程序,它与蓝牙设备(如蓝牙套接字或扬声器)交互。 我用d总线命令来获得配对的设备列表:如何用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" 
    ] 

这是伟大的,但我需要的不仅是互助,而且设备也的名字(例如“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 ,你会得到关于该设备的所有信息