如何通过dbus API扫描蓝牙LE设备?

时间:2014-12-04 15:43:27

标签: ubuntu bluetooth-lowenergy dbus bluez

我正在尝试使用bluez DBus API扫描蓝牙LE设备。我已经使用

安装了bluez-5.25
--enable-experimental 

配置选项。我可以在构建中看到已经编译了支持。 HeartBeat,ThermoMeter等接口出现在DBus中,但不出现在

org.bluez.ProximityMonitor1 

接口。据我所知,这个接口将需要永久扫描蓝牙LE设备与有关距离的信息。但我刚刚开始处理bluez,所以我不确定。

DBus API中是否提供了所有必需的功能?为了永久扫描LE设备需要什么?

1 个答案:

答案 0 :(得分:3)

您需要注册org.bluez.Device1代理对象的DBUS创建。然后可以将org.bluez.Adapter1接口用于StartDiscovery。这将扫描Classic和LE设备。检测到设备时,将创建Device1对象,并调用您注册的回调。