我需要以编程方式更改安全简单配对模式,但我不知道如何使用DBus命令在DBus中设置SSP模式。
使用btmgmt实用程序,我只需:
btmgmt ssp off
btmgmt ssp on好的,但是我需要的是DBus方法调用,我可以将它包含在应用程序中。
但是Bluez文档似乎没有提到任何改变SSP模式的DBus方法。
有人知道怎么做吗?( gdbus call或dbus-send示例将非常好)。
还是说这是不可能的?
发布于 2018-02-10 10:08:01
使用DBus是不可能做到这一点的。蓝光没有这方面的DBus API。您需要使用蓝牙管理套接字接口来切换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 (不推荐)来完成此操作。参见bluez-5-X/lib/hci.c.中的hci_write_simple_pairing_mode方法
https://stackoverflow.com/questions/48706579
复制相似问题