summaryrefslogtreecommitdiffstats
path: root/examples
diff options
context:
space:
mode:
Diffstat (limited to 'examples')
-rw-r--r--examples/bluetooth/heartrate-server/main.cpp11
1 files changed, 7 insertions, 4 deletions
diff --git a/examples/bluetooth/heartrate-server/main.cpp b/examples/bluetooth/heartrate-server/main.cpp
index f51a1694..ea01d07d 100644
--- a/examples/bluetooth/heartrate-server/main.cpp
+++ b/examples/bluetooth/heartrate-server/main.cpp
@@ -93,7 +93,7 @@ int main(int argc, char *argv[])
//! [Start Advertising]
const QScopedPointer<QLowEnergyController> leController(QLowEnergyController::createPeripheral());
- const QScopedPointer<QLowEnergyService> service(leController->addService(serviceData));
+ QScopedPointer<QLowEnergyService> service(leController->addService(serviceData));
leController->startAdvertising(QLowEnergyAdvertisingParameters(), advertisingData,
advertisingData);
//! [Start Advertising]
@@ -123,9 +123,12 @@ int main(int argc, char *argv[])
heartbeatTimer.start(1000);
//! [Provide Heartbeat]
- auto reconnect = [&leController, advertisingData]() {
- leController->startAdvertising(QLowEnergyAdvertisingParameters(), advertisingData,
- advertisingData);
+ auto reconnect = [&leController, advertisingData, &service, serviceData]()
+ {
+ service.reset(leController->addService(serviceData));
+ if (!service.isNull())
+ leController->startAdvertising(QLowEnergyAdvertisingParameters(),
+ advertisingData, advertisingData);
};
QObject::connect(leController.data(), &QLowEnergyController::disconnected, reconnect);