The QBluetoothDeviceInfo class stores information about the Bluetooth device. 更多...
头: | #include <QBluetoothDeviceInfo> |
qmake: | QT += bluetooth |
enum | CoreConfiguration { UnknownCoreConfiguration, BaseRateCoreConfiguration, BaseRateAndLowEnergyCoreConfiguration, LowEnergyCoreConfiguration } |
flags | CoreConfigurations |
enum class | Field { None, RSSI, ManufacturerData, ServiceData, All } |
flags | 字段 |
enum | MajorDeviceClass { MiscellaneousDevice, ComputerDevice, PhoneDevice, NetworkDevice, AudioVideoDevice, …, UncategorizedDevice } |
enum | MinorAudioVideoClass { UncategorizedAudioVideoDevice, WearableHeadsetDevice, HandsFreeDevice, Microphone, Loudspeaker, …, GamingDevice } |
enum | MinorComputerClass { UncategorizedComputer, DesktopComputer, ServerComputer, LaptopComputer, HandheldClamShellComputer, …, WearableComputer } |
enum | MinorHealthClass { UncategorizedHealthDevice, HealthBloodPressureMonitor, HealthThermometer, HealthWeightScale, HealthGlucoseMeter, …, HealthStepCounter } |
enum | MinorImagingClass { UncategorizedImagingDevice, ImageDisplay, ImageCamera, ImageScanner, ImagePrinter } |
enum | MinorMiscellaneousClass { UncategorizedMiscellaneous } |
enum | MinorNetworkClass { NetworkFullService, NetworkLoadFactorOne, NetworkLoadFactorTwo, NetworkLoadFactorThree, NetworkLoadFactorFour, …, NetworkNoService } |
enum | MinorPeripheralClass { UncategorizedPeripheral, KeyboardPeripheral, PointingDevicePeripheral, KeyboardWithPointingDevicePeripheral, JoystickPeripheral, …, CardReaderPeripheral } |
enum | MinorPhoneClass { UncategorizedPhone, CellularPhone, CordlessPhone, SmartPhone, WiredModemOrVoiceGatewayPhone, CommonIsdnAccessPhone } |
enum | MinorToyClass { UncategorizedToy, ToyRobot, ToyVehicle, ToyDoll, ToyController, ToyGame } |
enum | MinorWearableClass { UncategorizedWearableDevice, WearableWristWatch, WearablePager, WearableJacket, WearableHelmet, WearableGlasses } |
enum | ServiceClass { NoService, PositioningService, NetworkingService, RenderingService, CapturingService, …, AllServices } |
flags | ServiceClasses |
QBluetoothDeviceInfo () | |
QBluetoothDeviceInfo (const QBluetoothAddress & address , const QString & name , quint32 classOfDevice ) | |
QBluetoothDeviceInfo (const QBluetoothUuid & uuid , const QString & name , quint32 classOfDevice ) | |
QBluetoothDeviceInfo (const QBluetoothDeviceInfo & other ) | |
~QBluetoothDeviceInfo () | |
QBluetoothAddress | address () const |
QBluetoothDeviceInfo::CoreConfigurations | coreConfigurations () const |
QBluetoothUuid | deviceUuid () const |
bool | isCached () const |
bool | isValid () const |
QBluetoothDeviceInfo::MajorDeviceClass | majorDeviceClass () const |
QByteArray | manufacturerData (quint16 manufacturerId ) const |
QMultiHash<quint16, QByteArray> | manufacturerData () const |
QList<quint16> | manufacturerIds () const |
quint8 | minorDeviceClass () const |
QString | name () const |
qint16 | rssi () const |
QBluetoothDeviceInfo::ServiceClasses | serviceClasses () const |
(since 6.3)
QByteArray
|
serviceData (const QBluetoothUuid & serviceId ) const |
(since 6.3)
QMultiHash<QBluetoothUuid, QByteArray>
|
serviceData () const |
(since 6.3)
QList<QBluetoothUuid>
|
serviceIds () const |
(从 6.0 起)
QList<QBluetoothUuid>
|
serviceUuids () const |
void | setCached (bool cached ) |
void | setCoreConfigurations (QBluetoothDeviceInfo::CoreConfigurations coreConfigs ) |
void | setDeviceUuid (const QBluetoothUuid & uuid ) |
bool | setManufacturerData (quint16 manufacturerId , const QByteArray & data ) |
(从 6.2 起)
void
|
setName (const QString & name ) |
void | setRssi (qint16 signal ) |
(since 6.3)
bool
|
setServiceData (const QBluetoothUuid & serviceId , const QByteArray & data ) |
void | setServiceUuids (const QList<QBluetoothUuid> & uuids ) |
QBluetoothDeviceInfo & | operator= (const QBluetoothDeviceInfo & other ) |
bool | operator!= (const QBluetoothDeviceInfo & a , const QBluetoothDeviceInfo & b ) |
bool | operator== (const QBluetoothDeviceInfo & a , const QBluetoothDeviceInfo & b ) |
QBluetoothDeviceInfo provides information about a Bluetooth device's name, address and class of device.
This enum describes the configuration of the device.
常量 | 值 | 描述 |
---|---|---|
QBluetoothDeviceInfo::UnknownCoreConfiguration
|
0x0
|
The type of the Bluetooth device cannot be determined. |
QBluetoothDeviceInfo::BaseRateCoreConfiguration
|
0x02
|
The device is a standard Bluetooth device. |
QBluetoothDeviceInfo::BaseRateAndLowEnergyCoreConfiguration
|
0x03
|
The device is a Bluetooth Smart device with support for standard and Low Energy device. |
QBluetoothDeviceInfo::LowEnergyCoreConfiguration
|
0x01
|
The device is a Bluetooth Low Energy device. |
The CoreConfigurations type is a typedef for QFlags <CoreConfiguration>. It stores an OR combination of CoreConfiguration values.
This enum is used in conjuntion with the QBluetoothDeviceDiscoveryAgent::deviceUpdated () signal and indicates the field that changed.
常量 | 值 | 描述 |
---|---|---|
QBluetoothDeviceInfo::Field::None
|
0x0000
|
None of the values changed. |
QBluetoothDeviceInfo::Field::RSSI
|
0x0001
|
The rssi () value of the device changed. |
QBluetoothDeviceInfo::Field::ManufacturerData
|
0x0002
|
The manufacturerData () field changed |
QBluetoothDeviceInfo::Field::ServiceData
|
0x0004
|
The serviceData () field changed |
QBluetoothDeviceInfo::Field::All
|
0x7fff
|
Matches every possible field. |
The Fields type is a typedef for QFlags <Field>. It stores an OR combination of Field values.
This enum describes a Bluetooth device's major device class.
常量 | 值 | 描述 |
---|---|---|
QBluetoothDeviceInfo::MiscellaneousDevice
|
0
|
A miscellaneous device. |
QBluetoothDeviceInfo::ComputerDevice
|
1
|
A computer device or PDA. |
QBluetoothDeviceInfo::PhoneDevice
|
2
|
A telephone device. |
QBluetoothDeviceInfo::NetworkDevice
|
3
|
A device that provides access to a local area network (since Qt 5.13). |
QBluetoothDeviceInfo::AudioVideoDevice
|
4
|
A device capable of playback or capture of audio and/or video. |
QBluetoothDeviceInfo::PeripheralDevice
|
5
|
A peripheral device such as a keyboard, mouse, and so on. |
QBluetoothDeviceInfo::ImagingDevice
|
6
|
An imaging device such as a display, printer, scanner or camera. |
QBluetoothDeviceInfo::WearableDevice
|
7
|
A wearable device such as a watch or pager. |
QBluetoothDeviceInfo::ToyDevice
|
8
|
A toy. |
QBluetoothDeviceInfo::HealthDevice
|
9
|
A health reated device such as heart rate or temperature monitor. |
QBluetoothDeviceInfo::UncategorizedDevice
|
31
|
A device that does not fit into any of the other device classes. |
This enum describes the minor device classes for audio/video devices.
常量 | 值 | 描述 |
---|---|---|
QBluetoothDeviceInfo::UncategorizedAudioVideoDevice
|
0
|
An uncategorized audio/video device. |
QBluetoothDeviceInfo::WearableHeadsetDevice
|
1
|
A wearable headset device. |
QBluetoothDeviceInfo::HandsFreeDevice
|
2
|
A handsfree device. |
QBluetoothDeviceInfo::Microphone
|
4
|
A microphone. |
QBluetoothDeviceInfo::Loudspeaker
|
5
|
A loudspeaker. |
QBluetoothDeviceInfo::Headphones
|
6
|
Headphones. |
QBluetoothDeviceInfo::PortableAudioDevice
|
7
|
A portable audio device. |
QBluetoothDeviceInfo::CarAudio
|
8
|
A car audio device. |
QBluetoothDeviceInfo::SetTopBox
|
9
|
A settop box. |
QBluetoothDeviceInfo::HiFiAudioDevice
|
10
|
A HiFi audio device. |
QBluetoothDeviceInfo::Vcr
|
11
|
A video cassette recorder. |
QBluetoothDeviceInfo::VideoCamera
|
12
|
A video camera. |
QBluetoothDeviceInfo::Camcorder
|
13
|
A video camera. |
QBluetoothDeviceInfo::VideoMonitor
|
14
|
A video monitor. |
QBluetoothDeviceInfo::VideoDisplayAndLoudspeaker
|
15
|
A video display with built-in loudspeaker. |
QBluetoothDeviceInfo::VideoConferencing
|
16
|
A video conferencing device. |
QBluetoothDeviceInfo::GamingDevice
|
18
|
A gaming device. |
This enum describes the minor device classes for computer devices.
常量 | 值 | 描述 |
---|---|---|
QBluetoothDeviceInfo::UncategorizedComputer
|
0
|
An uncategorized computer device. |
QBluetoothDeviceInfo::DesktopComputer
|
1
|
A desktop computer. |
QBluetoothDeviceInfo::ServerComputer
|
2
|
A server computer. |
QBluetoothDeviceInfo::LaptopComputer
|
3
|
A laptop computer. |
QBluetoothDeviceInfo::HandheldClamShellComputer
|
4
|
A clamshell handheld computer or PDA. |
QBluetoothDeviceInfo::HandheldComputer
|
5
|
A handheld computer or PDA. |
QBluetoothDeviceInfo::WearableComputer
|
6
|
A wearable computer. |
This enum describes the minor device classes for health devices.
常量 | 值 | 描述 |
---|---|---|
QBluetoothDeviceInfo::UncategorizedHealthDevice
|
0
|
An uncategorized health device. |
QBluetoothDeviceInfo::HealthBloodPressureMonitor
|
0x1
|
A blood pressure monitor. |
QBluetoothDeviceInfo::HealthThermometer
|
0x2
|
A Thermometer. |
QBluetoothDeviceInfo::HealthWeightScale
|
0x3
|
A scale. |
QBluetoothDeviceInfo::HealthGlucoseMeter
|
0x4
|
A glucose meter. |
QBluetoothDeviceInfo::HealthPulseOximeter
|
0x5
|
A blood oxygen saturation meter. |
QBluetoothDeviceInfo::HealthDataDisplay
|
0x7
|
A data display. |
QBluetoothDeviceInfo::HealthStepCounter
|
0x8
|
A pedometer. |
This enum describes the minor device classes for imaging devices.
常量 | 值 | 描述 |
---|---|---|
QBluetoothDeviceInfo::UncategorizedImagingDevice
|
0
|
An uncategorized imaging device. |
QBluetoothDeviceInfo::ImageDisplay
|
0x04
|
A device capable of displaying images. |
QBluetoothDeviceInfo::ImageCamera
|
0x08
|
A camera. |
QBluetoothDeviceInfo::ImageScanner
|
0x10
|
An image scanner. |
QBluetoothDeviceInfo::ImagePrinter
|
0x20
|
A printer. |
This enum describes the minor device classes for miscellaneous Bluetooth devices.
常量 | 值 | 描述 |
---|---|---|
QBluetoothDeviceInfo::UncategorizedMiscellaneous
|
0
|
An uncategorized miscellaneous device. |
This enum describes the minor device classes for local area network access devices. Local area network access devices use the minor device class to specify the current network utilization.
常量 | 值 | 描述 |
---|---|---|
QBluetoothDeviceInfo::NetworkFullService
|
0x00
|
100% of the total bandwidth is available. |
QBluetoothDeviceInfo::NetworkLoadFactorOne
|
0x08
|
0 - 17% of the total bandwidth is currently being used. |
QBluetoothDeviceInfo::NetworkLoadFactorTwo
|
0x10
|
17 - 33% of the total bandwidth is currently being used. |
QBluetoothDeviceInfo::NetworkLoadFactorThree
|
0x18
|
33 - 50% of the total bandwidth is currently being used. |
QBluetoothDeviceInfo::NetworkLoadFactorFour
|
0x20
|
50 - 67% of the total bandwidth is currently being used. |
QBluetoothDeviceInfo::NetworkLoadFactorFive
|
0x28
|
67 - 83% of the total bandwidth is currently being used. |
QBluetoothDeviceInfo::NetworkLoadFactorSix
|
0x30
|
83 - 99% of the total bandwidth is currently being used. |
QBluetoothDeviceInfo::NetworkNoService
|
0x38
|
No network service available. |
This enum describes the minor device classes for peripheral devices.
常量 | 值 | 描述 |
---|---|---|
QBluetoothDeviceInfo::UncategorizedPeripheral
|
0
|
An uncategorized peripheral device. |
QBluetoothDeviceInfo::KeyboardPeripheral
|
0x10
|
键盘。 |
QBluetoothDeviceInfo::PointingDevicePeripheral
|
0x20
|
A pointing device, for example a mouse. |
QBluetoothDeviceInfo::KeyboardWithPointingDevicePeripheral
|
0x30
|
A keyboard with built-in pointing device. |
QBluetoothDeviceInfo::JoystickPeripheral
|
0x01
|
A joystick. |
QBluetoothDeviceInfo::GamepadPeripheral
|
0x02
|
A game pad. |
QBluetoothDeviceInfo::RemoteControlPeripheral
|
0x03
|
A remote control. |
QBluetoothDeviceInfo::SensingDevicePeripheral
|
0x04
|
A sensing device. |
QBluetoothDeviceInfo::DigitizerTabletPeripheral
|
0x05
|
A digitizer tablet peripheral. |
QBluetoothDeviceInfo::CardReaderPeripheral
|
0x06
|
A card reader peripheral. |
This enum describes the minor device classes for phone devices.
常量 | 值 | 描述 |
---|---|---|
QBluetoothDeviceInfo::UncategorizedPhone
|
0
|
An uncategorized phone device. |
QBluetoothDeviceInfo::CellularPhone
|
1
|
A cellular phone. |
QBluetoothDeviceInfo::CordlessPhone
|
2
|
A cordless phone. |
QBluetoothDeviceInfo::SmartPhone
|
3
|
A smart phone. |
QBluetoothDeviceInfo::WiredModemOrVoiceGatewayPhone
|
4
|
A wired modem or voice gateway. |
QBluetoothDeviceInfo::CommonIsdnAccessPhone
|
5
|
A device that provides ISDN access. |
This enum describes the minor device classes for toy devices.
常量 | 值 | 描述 |
---|---|---|
QBluetoothDeviceInfo::UncategorizedToy
|
0
|
An uncategorized toy. |
QBluetoothDeviceInfo::ToyRobot
|
1
|
A toy robot. |
QBluetoothDeviceInfo::ToyVehicle
|
2
|
A toy vehicle. |
QBluetoothDeviceInfo::ToyDoll
|
3
|
A toy doll or action figure. |
QBluetoothDeviceInfo::ToyController
|
4
|
A controller. |
QBluetoothDeviceInfo::ToyGame
|
5
|
A game. |
This enum describes the minor device classes for wearable devices.
常量 | 值 | 描述 |
---|---|---|
QBluetoothDeviceInfo::UncategorizedWearableDevice
|
0
|
An uncategorized wearable device. |
QBluetoothDeviceInfo::WearableWristWatch
|
1
|
A wristwatch. |
QBluetoothDeviceInfo::WearablePager
|
2
|
A pager. |
QBluetoothDeviceInfo::WearableJacket
|
3
|
A jacket. |
QBluetoothDeviceInfo::WearableHelmet
|
4
|
A helmet. |
QBluetoothDeviceInfo::WearableGlasses
|
5
|
A pair of glasses. |
This enum describes the service class of the Bluetooth device. The service class is used as a rudimentary form of service discovery. It is meant to provide a list of the types of services that the device might provide.
常量 | 值 | 描述 |
---|---|---|
QBluetoothDeviceInfo::NoService
|
0x0000
|
The device does not provide any services. |
QBluetoothDeviceInfo::PositioningService
|
0x0001
|
The device provides positioning services. |
QBluetoothDeviceInfo::NetworkingService
|
0x0002
|
The device provides networking services. |
QBluetoothDeviceInfo::RenderingService
|
0x0004
|
The device provides rendering services. |
QBluetoothDeviceInfo::CapturingService
|
0x0008
|
The device provides capturing services. |
QBluetoothDeviceInfo::ObjectTransferService
|
0x0010
|
The device provides object transfer services. |
QBluetoothDeviceInfo::AudioService
|
0x0020
|
The device provides audio services. |
QBluetoothDeviceInfo::TelephonyService
|
0x0040
|
The device provides telephony services. |
QBluetoothDeviceInfo::InformationService
|
0x0080
|
The device provides information services. |
QBluetoothDeviceInfo::AllServices
|
0x07ff
|
The device provides services of all types. |
The ServiceClasses type is a typedef for QFlags <ServiceClass>. It stores an OR combination of ServiceClass values.
Constructs an invalid QBluetoothDeviceInfo object.
Constructs a QBluetoothDeviceInfo object with Bluetooth address address , device name name and the encoded class of device classOfDevice .
The classOfDevice parameter is encoded in the following format
Bits | Size | 描述 |
---|---|---|
0 - 1 | 2 | Unused, set to 0. |
2 - 7 | 6 | Minor device class. |
8 - 12 | 5 | Major device class. |
13 - 23 | 11 | Service class. |
Constructs a QBluetoothDeviceInfo object with unique uuid , device name name and the encoded class of device classOfDevice .
This constructor is required for Low Energy devices on macOS and iOS. CoreBluetooth API hides addresses and provides unique UUIDs to identify a device. This UUID is not the same thing as a service UUID and is required to work later with CoreBluetooth API and discovered devices.
Constructs a QBluetoothDeviceInfo that is a copy of other .
[noexcept]
QBluetoothDeviceInfo::
~QBluetoothDeviceInfo
()
销毁 QBluetoothDeviceInfo .
Returns the address of the device.
注意: On iOS and macOS this address is invalid. Instead deviceUuid () should be used. Those two platforms do not expose Bluetooth addresses for found Bluetooth devices and utilize unique device identifiers.
另请参阅 deviceUuid ().
Returns the configuration of the device. If device configuration is not set, basic rate device configuration will be returned.
另请参阅 setCoreConfigurations ().
Returns a unique identifier for a Bluetooth device without an address.
In general, this uuid is invalid on every platform but macOS and iOS. It is used as a workaround for those two platforms as they do not provide Bluetooth addresses for found Bluetooth Low Energy devices. Every other platform uses address () 代替。
另请参阅 setDeviceUuid ().
返回 true 若 QBluetoothDeviceInfo object is created from cached data.
返回 true 若 QBluetoothDeviceInfo object is valid, otherwise returns false.
Returns the major device class of the device.
Returns the data associated with the given manufacturerId .
Manufacturer data is defined by the Supplement to the Bluetooth Core Specification and consists of two segments:
The interpretation of the data octets is defined by the manufacturer specified by the company identifier.
注意: The remote device may provide multiple data entries per manufacturerId. This function only returns the first entry. If all entries are needed use manufacturerData () which returns a multi hash.
另请参阅 manufacturerIds () 和 setManufacturerData ().
Returns the complete set of all manufacturer data from advertisement packets.
Some devices may provide multiple manufacturer data entries per manufacturer ID. An example might be a Bluetooth Low Energy device that sends a different manufacturer data via advertisement packets and scan response packets respectively. Therefore the returned hash table may have multiple entries per manufacturer ID or hash key.
另请参阅 setManufacturerData .
Returns all manufacturer IDs from advertisement packets attached to this device information.
另请参阅 manufacturerData () 和 setManufacturerData ().
Returns the minor device class of the device. The actual information is context dependent on the value of majorDeviceClass ().
另请参阅 MinorAudioVideoClass , MinorComputerClass , MinorHealthClass , MinorImagingClass , MinorMiscellaneousClass , MinorNetworkClass , MinorPeripheralClass , MinorPhoneClass , MinorToyClass ,和 MinorWearableClass .
Returns the name assigned to the device.
另请参阅 setName ().
Returns the signal strength when the device was last scanned
另请参阅 setRssi ().
Returns the service class of the device.
[since 6.3]
QByteArray
QBluetoothDeviceInfo::
serviceData
(const
QBluetoothUuid
&
serviceId
) const
Returns the data associated with the given serviceId .
Service data is defined by the Supplement to the Bluetooth Core Specification and consists of two segments:
注意: The remote device may provide multiple data entries per serviceId . This function only returns the first entry. If all entries are needed use serviceData () which returns a multi hash.
该函数在 Qt 6.3 引入。
另请参阅 serviceIds () 和 setServiceData ().
[since 6.3]
QMultiHash
<
QBluetoothUuid
,
QByteArray
> QBluetoothDeviceInfo::
serviceData
() const
Returns the complete set of all service data from advertisement packets.
Some devices may provide multiple service data entries per service data ID. An example might be a Bluetooth Low Energy device that sends a different service data via advertisement packets and scan response packets respectively. Therefore the returned hash table may have multiple entries per service data ID or hash key.
该函数在 Qt 6.3 引入。
另请参阅 setServiceData .
[since 6.3]
QList
<
QBluetoothUuid
> QBluetoothDeviceInfo::
serviceIds
() const
Returns all service data IDs from advertisement packets attached to this device information.
该函数在 Qt 6.3 引入。
另请参阅 serviceData () 和 setServiceData ().
[since 6.0]
QList
<
QBluetoothUuid
> QBluetoothDeviceInfo::
serviceUuids
() const
Returns the list of service UUIDs supported by the device. Most commonly this list of UUIDs represents custom service UUIDs or a service UUID value specified by QBluetoothUuid::ServiceClassUuid .
该函数在 Qt 6.0 引入。
另请参阅 setServiceUuids () and serviceUuids().
Used by the system to set the cached flag if the QBluetoothDeviceInfo is created from cached data. Cached information may not be as accurate as data read from an active device.
另请参阅 isCached ().
设置 CoreConfigurations 为设备到 coreConfigs . This will help to make a difference between regular and Low Energy devices.
另请参阅 coreConfigurations ().
Sets the unique identifier uuid for Bluetooth devices, that do not have addresses. This happens on macOS and iOS, where the CoreBluetooth API hides addresses, but provides UUIDs to identify devices/peripherals.
This uuid is invalid on any other platform.
另请参阅 deviceUuid ().
Sets the advertised manufacturer
data
为给定
manufacturerId
。返回
true
if it was inserted,
false
if it was already known.
Since Qt 5.14, different values for data and the same manufacturerId no longer replace each other but are accumulated for the duration of a device scan.
另请参阅 manufacturerData .
[since 6.2]
void
QBluetoothDeviceInfo::
setName
(const
QString
&
name
)
设置 name 为设备。
该函数在 Qt 6.2 引入。
另请参阅 name ().
设置 signal strength value, used internally.
另请参阅 rssi ().
[since 6.3]
bool
QBluetoothDeviceInfo::
setServiceData
(const
QBluetoothUuid
&
serviceId
, const
QByteArray
&
data
)
Sets the advertised service
data
为给定
serviceId
。返回
true
if it was inserted,
false
if it was already known.
该函数在 Qt 6.3 引入。
另请参阅 serviceData .
Sets the list of service UUIDs to uuids .
另请参阅 serviceUuids ().
Makes a copy of the other 并将其赋值给此 QBluetoothDeviceInfo 对象。
返回
true
若两
QBluetoothDeviceInfo
对象
a
and
b
are not equal.
返回
true
若两
QBluetoothDeviceInfo
对象
a
and
b
相等。