通过所需服务的uuid过滤蓝牙设备

时间:2019-07-29 11:05:49

标签: qt qt5.6 sailfish-os

我正在编写一个程序,使用Qt 5.6通过蓝牙在两个设备之间进行数据交换。我发现以下示例:

void MessengerClient::deviceDiscovered(const QBluetoothDeviceInfo &deviceInfo) {
      //...
      if (deviceInfo.serviceUuids().contains(QBluetoothUuid(SERVICE_UUID))) {
        emit clientStatusChanged(QStringLiteral("Device found"));
        discoveryAgent->stop();
        requestPairing(deviceInfo.address());
      }
    }

从逻辑上讲,它根据这些设备提供的服务类型过滤设备。我在另一台Android设备上具有某个UUID的服务。但是,在将这两个设备配对之前,客户端不会看到此UUID。 deviceInfo.serviceUuids ()似乎具有某个参数,该参数负责搜索服务返回的数据的完整性,但是我无法理解如何设置此参数。可能有人遇到过此类任务,请向我解释为什么我无法在配对之前按服务类型过滤设备。预先感谢

0 个答案:

没有答案