Bluetooth 无法通过DBus在Bluez中设置SSP模式

Bluetooth 无法通过DBus在Bluez中设置SSP模式,bluetooth,dbus,bluez,gdbus,ssp,Bluetooth,Dbus,Bluez,Gdbus,Ssp,我需要以编程方式更改安全简单配对模式,但我不知道如何使用DBus命令在Bluez中打开或关闭SSP模式 使用btmgmt实用程序,我只需执行以下操作: btmgmt ssp off btmgmt ssp on 好的,但我需要的是可以包含在应用程序中的DBus方法调用 但是,似乎没有提到任何DBus方法来更改SSP模式 有人知道怎么做吗?gdbus调用或dbus发送示例将非常好 或者这是不可能的?使用DBus无法做到这一点。Bluez对此没有DBus API。您需要使用Bluetooth管理套接

我需要以编程方式更改安全简单配对模式,但我不知道如何使用DBus命令在Bluez中打开或关闭SSP模式

使用btmgmt实用程序,我只需执行以下操作:

btmgmt ssp off
btmgmt ssp on
好的,但我需要的是可以包含在应用程序中的DBus方法调用

但是,似乎没有提到任何DBus方法来更改SSP模式

有人知道怎么做吗?gdbus调用或dbus发送示例将非常好


或者这是不可能的?

使用DBus无法做到这一点。Bluez对此没有DBus API。您需要使用Bluetooth管理套接字接口切换SSP模式,也可以使用bluez弃用的HCI接口进行切换

要了解如何使用蓝牙管理套接字,请参阅bluez-5.X源目录中的bluez-5-X/doc/mgmt-api.txt文件。切换SSP的命令代码为0x000B。实际上,这就是btmgmt工具启用/禁用SSP的方式。它使用蓝牙管理插座。在bluez-5.X/tools/btmgmt.c中搜索关键字ssp,并查看示例c代码


您也可以使用不推荐使用的hci API执行此操作。请参阅bluez-5-X/lib/hci.c中的hci_write_simple_pairing_mode方法。

谢谢您的回答。