Purpose CBCentralManagerScanOptionSolicitedServiceUUIDsKey

The CBCentralManagerScanOptionSolicitedServiceUUIDsKey option is available when scanning devices in CoreBluetooth, the documentation states

Specifying this scan option causes the central dispatcher to also scan for peripheral devices requesting any of the services contained in the array.

What is the purpose of this option? What is a requested service? How does this differ from specifying a service UUID in a services array?

+8
ios macos core-bluetooth
source share
1 answer

As I understand it, a service invitation means that the peripheral device can indicate what services it will use in the central when the connection occurs. For example, you have Bluetooth LE and ANCS in iOS
Link to the blog post: http://blog.punchthrough.com/post/63658238857/the-apple-notification-center-service-or-wtf-is

Bluetooth Specification V4.0 Vol 3. Part C. Section 11.1.9

11.1.9 Service Request

One type of AD service request can be sent to invite other devices that exhibit one or more of the services specified in the service request data for connection. the device must be in a non-oriented plug-in mode and in one of the unlockable modes. This allows the Center to provide one or more of these services to connect to this peripheral device, so that the peripheral device can use the services on the Central.

+13
source share

All Articles