QBluetoothServiceDiscoveryAgent
Since: 1.2
#include <QtConnectivity/QBluetoothServiceDiscoveryAgent>
More information will be added here shortly. For now, you'll find more extensive information about this class in the Qt reference for QBluetoothServiceDiscoveryAgent
The QBluetoothServiceDiscoveryAgent class provides an API for querying the services provided by a Bluetooth device.
To query the services provided by all contactable Bluetooth devices create an instance of QBluetoothServiceDiscoveryAgent, connect to either the serviceDiscovered() or finished() signals and call start().
QBluetoothServiceDiscoveryAgent *discoveryAgent = new QBluetoothServiceDiscoveryAgent(this); connect(discoveryAgent, SIGNAL(serviceDiscovered(const QBluetoothServiceInfo&)), this, SLOT(serviceDiscovered(const QBluetoothServiceInfo&))); // Automatically delete agent when service discovery finishes. connect(discoveryAgent, SIGNAL(finished()), this, SLOT(deleteLater())); discoveryAgent->start();By default a minimal service discovery is performed. In this mode the QBluetotohServiceInfo objects returned are guaranteed to contain only device and service UUID information. Depending on platform and device capabilities other service information may also be available. For most use cases this is adequate as QBluetoothSocket::connectToService() will perform additional discovery if required. If full service information is required pass FullDiscovery as the discoveryMode parameter to start().
Overview
Public Types Index
enum DiscoveryMode | |
enum Error |
Public Functions Index
QBluetoothServiceDiscoveryAgent (QObject *parent=0) | |
QBluetoothServiceDiscoveryAgent (const QBluetoothAddress &remoteAddress, QObject *parent=0) | |
~QBluetoothServiceDiscoveryAgent () | |
QList< QBluetoothServiceInfo > | discoveredServices () const |
Error | error () const |
QString | errorString () const |
bool | isActive () const |
void | setUuidFilter (const QList< QBluetoothUuid > &uuids) |
void | setUuidFilter (const QBluetoothUuid &uuid) |
QList< QBluetoothUuid > | uuidFilter () const |
Signals Index
void | canceled () |
void | error (QBluetoothServiceDiscoveryAgent::Error error) |
void | finished () |
void | serviceDiscovered (const QBluetoothServiceInfo &info) |
Public Types
This enum describes the service discovery mode.
MinimalDiscovery Performs a minimal service discovery. The QBluetoothServiceInfo objects returned may be incomplete and are only guaranteed to contain device and service UUID information. FullDiscovery Performs a full service discovery.
- MinimalDiscovery
- FullDiscovery
This enum describes errors that can occur during service discovery.
NoError No error. DeviceDiscoveryError Error occurred during device discovery. UnknownError An unidentified error occurred.
- NoError
- DeviceDiscoveryError
- UnknownError 100
Public Functions
Constructs a new QBluetoothServiceDiscoveryAgent with parent.
Services will be discovered on all contactable devices.
Constructs a new QBluetoothServiceDiscoveryAgent for remoteAddress and with parent.
If remoteAddress is null services will be discovred on all contactable Bluetooth devices.
Destructor.
QList< QBluetoothServiceInfo >
Returns the list of all discovered services.
Error
Returns the type of error that last occurred.
If service discovery is done on a signle address it will returns errors when trying to discover services on that device. If the alternate constructor is used and devices are discovered by a scan, then errors doing service discovery on individual devices are not saved and no signals are emitted. In this case errors are fairly normal since some devices may not respond to discovery or may no longer be in range. As such errors are surpressed. If no services are returned, it can be assumed no services could be discovered.
QString
Returns a human-readable description of the last error that occurred when doing service discovery on a single device.
bool
Returns true if service discovery is currently active, otherwise returns false.
void
This is an overloaded member function, provided for convenience.
Sets the UUID filter to a list containing the single element uuid.
Public Slots
void
Clears the results of a previous service discovery.
void
Starts service discovery.
mode specifies the type of service discovery to perform.
void
Stops service discovery.
Signals
void
Signals the cancellation of the service discovery.
void
This signal is emitted when an error occurs.
The error parameter describes the error that occurred.
void
This signal is emitted when Bluetooth service discovery completes.
void
This signal is emitted when the Bluetooth service described by info is discovered.
© 2013 Digia Plc and/or its subsidiaries. Documentation contributions included herein are the copyrights of their respective owners.
The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation.
Documentation sources may be obtained from www.qt-project.org.
Digia, Qt and their respective logos are trademarks of Digia Plc in Finland and/or other countries worldwide. All other trademarks are property of their respective owners. Privacy Policy