42QBluetoothLocalDevice localDevice;
43QString localDeviceName;
46if (localDevice.isValid()) {
49 localDevice.powerOn();
52 localDeviceName = localDevice.name();
55 localDevice.setHostMode(QBluetoothLocalDevice::HostDiscoverable);
58 QList<QBluetoothAddress> remotes;
59 remotes = localDevice.connectedDevices();
71 QBluetoothDeviceDiscoveryAgent *discoveryAgent =
new QBluetoothDeviceDiscoveryAgent(
this);
72 connect(discoveryAgent, SIGNAL(deviceDiscovered(QBluetoothDeviceInfo)),
73 this, SLOT(deviceDiscovered(QBluetoothDeviceInfo)));
76 discoveryAgent->start();
93 QBluetoothServiceDiscoveryAgent *discoveryAgent =
new QBluetoothServiceDiscoveryAgent(
this);
94 connect(discoveryAgent, SIGNAL(serviceDiscovered(QBluetoothServiceInfo)),
95 this, SLOT(serviceDiscovered(QBluetoothServiceInfo)));
98 discoveryAgent->start();
117 QBluetoothDeviceInfo remoteDevice;
120 QLowEnergyService *first, *second;
121 QLowEnergyController control(remoteDevice);
122 control.connectToDevice();
126 first = control.createServiceObject(QBluetoothUuid::ServiceClassUuid::BatteryService);
127 second = control.createServiceObject(QBluetoothUuid::ServiceClassUuid::BatteryService);
128 Q_ASSERT(first->state() == QLowEnergyService::RemoteService);
129 Q_ASSERT(first->state() == second->state());
131 first->discoverDetails();
133 Q_ASSERT(first->state() == QLowEnergyService::RemoteServiceDiscovering);
134 Q_ASSERT(first->state() == second->state());
140 QBluetoothDeviceInfo remoteDevice;
141 QLowEnergyService *service;
142 QLowEnergyController *control = QLowEnergyController::createCentral(remoteDevice,
this);
143 control->connectToDevice();
146 service = control->createServiceObject(QBluetoothUuid::ServiceClassUuid::BatteryService,
this);
150 service->discoverDetails();
156 QLowEnergyCharacteristic batteryLevel = service->characteristic(
157 QBluetoothUuid::CharacteristicType::BatteryLevel);
158 if (!batteryLevel.isValid())
161 QLowEnergyDescriptor notification = batteryLevel.descriptor(
162 QBluetoothUuid::DescriptorType::ClientCharacteristicConfiguration);
163 if (!notification.isValid())
167 connect(service, SIGNAL(characteristicChanged(QLowEnergyCharacteristic,QByteArray)),
168 this, SLOT(characteristicChanged(QLowEnergyCharacteristic,QByteArray)));
171 service->writeDescriptor(notification, QByteArray::fromHex(
"0100"));