PySide6.QtBluetooth.QBluetoothDeviceInfo

class QBluetoothDeviceInfo

QBluetoothDeviceInfo 类存储有关蓝牙设备的信息。更多

概要

方法

注意

本文档可能包含从C++自动翻译到Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译问题,您也可以通过在我们的https:/bugreports.qt.io/projects/PYSIDE上创建工单来告知我们。

详细描述

QBluetoothDeviceInfo 提供了关于蓝牙设备名称、地址和设备类别的信息。

class MajorDeviceClass

此枚举描述了蓝牙设备的主要设备类别。

常量

描述

QBluetoothDeviceInfo.MiscellaneousDevice

一个杂项设备。

QBluetoothDeviceInfo.ComputerDevice

计算机设备或PDA。

QBluetoothDeviceInfo.PhoneDevice

电话设备。

QBluetoothDeviceInfo.NetworkDevice

提供访问局域网功能的设备(自 Qt 5.13 起)。

QBluetoothDeviceInfo.AudioVideoDevice

能够播放或捕获音频和/或视频的设备。

QBluetoothDeviceInfo.PeripheralDevice

外围设备,如键盘、鼠标等。

QBluetoothDeviceInfo.ImagingDevice

成像设备,如显示器、打印机、扫描仪或相机。

QBluetoothDeviceInfo.WearableDevice

可穿戴设备,如手表或寻呼机。

QBluetoothDeviceInfo.ToyDevice

一个玩具。

QBluetoothDeviceInfo.HealthDevice

一个与健康相关的设备,例如心率或温度监测器。

QBluetoothDeviceInfo.UncategorizedDevice

一个不属于任何其他设备类别的设备。

class MinorMiscellaneousClass

此枚举描述了杂项蓝牙设备的次要设备类别。

常量

描述

QBluetoothDeviceInfo.UncategorizedMiscellaneous

一个未分类的杂项设备。

class MinorComputerClass

此枚举描述了计算机设备的次要设备类别。

常量

描述

QBluetoothDeviceInfo.UncategorizedComputer

一个未分类的计算机设备。

QBluetoothDeviceInfo.DesktopComputer

一台台式电脑。

QBluetoothDeviceInfo.ServerComputer

服务器计算机。

QBluetoothDeviceInfo.LaptopComputer

一台笔记本电脑。

QBluetoothDeviceInfo.HandheldClamShellComputer

一个翻盖式手持计算机或PDA。

QBluetoothDeviceInfo.HandheldComputer

手持计算机或PDA。

QBluetoothDeviceInfo.WearableComputer

可穿戴计算机。

class MinorPhoneClass

此枚举描述了电话设备的次要设备类别。

常量

描述

QBluetoothDeviceInfo.UncategorizedPhone

一个未分类的电话设备。

QBluetoothDeviceInfo.CellularPhone

一部手机。

QBluetoothDeviceInfo.CordlessPhone

一部无绳电话。

QBluetoothDeviceInfo.SmartPhone

一部智能手机。

QBluetoothDeviceInfo.WiredModemOrVoiceGatewayPhone

有线调制解调器或语音网关。

QBluetoothDeviceInfo.CommonIsdnAccessPhone

提供ISDN接入的设备。

class MinorNetworkClass

此枚举描述了局域网访问设备的次要设备类别。局域网访问设备使用次要设备类别来指定当前的网络利用率。

常量

描述

QBluetoothDeviceInfo.NetworkFullService

总带宽的100%可用。

QBluetoothDeviceInfo.NetworkLoadFactorOne

0 - 17% 的总带宽当前正在使用。

QBluetoothDeviceInfo.NetworkLoadFactorTwo

17 - 33% 的总带宽当前正在使用。

QBluetoothDeviceInfo.NetworkLoadFactorThree

33 - 50% 的总带宽当前正在使用中。

QBluetoothDeviceInfo.NetworkLoadFactorFour

当前使用了总带宽的50 - 67%。

QBluetoothDeviceInfo.NetworkLoadFactorFive

67 - 83% 的总带宽当前正在使用。

QBluetoothDeviceInfo.NetworkLoadFactorSix

83 - 99% 的总带宽当前正在使用中。

QBluetoothDeviceInfo.NetworkNoService

没有可用的网络服务。

class MinorAudioVideoClass

此枚举描述了音频/视频设备的次要设备类别。

常量

描述

QBluetoothDeviceInfo.UncategorizedAudioVideoDevice

一个未分类的音频/视频设备。

QBluetoothDeviceInfo.WearableHeadsetDevice

可穿戴耳机设备。

QBluetoothDeviceInfo.HandsFreeDevice

一个免提设备。

QBluetoothDeviceInfo.Microphone

一个麦克风。

QBluetoothDeviceInfo.Loudspeaker

一个扬声器。

QBluetoothDeviceInfo.Headphones

耳机。

QBluetoothDeviceInfo.PortableAudioDevice

便携式音频设备。

QBluetoothDeviceInfo.CarAudio

车载音频设备。

QBluetoothDeviceInfo.SetTopBox

一个机顶盒。

QBluetoothDeviceInfo.HiFiAudioDevice

一个高保真音频设备。

QBluetoothDeviceInfo.Vcr

一个录像机。

QBluetoothDeviceInfo.VideoCamera

一个视频摄像头。

QBluetoothDeviceInfo.Camcorder

一个摄像机。

QBluetoothDeviceInfo.VideoMonitor

一个视频监视器。

QBluetoothDeviceInfo.VideoDisplayAndLoudspeaker

带有内置扬声器的视频显示器。

QBluetoothDeviceInfo.VideoConferencing

一个视频会议设备。

QBluetoothDeviceInfo.GamingDevice

一个游戏设备。

class MinorPeripheralClass

此枚举描述了外围设备的次要设备类别。

常量

描述

QBluetoothDeviceInfo.UncategorizedPeripheral

一个未分类的外围设备。

QBluetoothDeviceInfo.KeyboardPeripheral

一个键盘。

QBluetoothDeviceInfo.PointingDevicePeripheral

一个指向设备,例如鼠标。

QBluetoothDeviceInfo.KeyboardWithPointingDevicePeripheral

带有内置指向设备的键盘。

QBluetoothDeviceInfo.JoystickPeripheral

一个游戏杆。

QBluetoothDeviceInfo.GamepadPeripheral

一个游戏手柄。

QBluetoothDeviceInfo.RemoteControlPeripheral

一个遥控器。

QBluetoothDeviceInfo.SensingDevicePeripheral

一个传感设备。

QBluetoothDeviceInfo.DigitizerTabletPeripheral

一个数字化平板外设。

QBluetoothDeviceInfo.CardReaderPeripheral

一个读卡器外设。

class MinorImagingClass

此枚举描述了成像设备的次要设备类别。

常量

描述

QBluetoothDeviceInfo.UncategorizedImagingDevice

一个未分类的成像设备。

QBluetoothDeviceInfo.ImageDisplay

能够显示图像的设备。

QBluetoothDeviceInfo.ImageCamera

一个相机。

QBluetoothDeviceInfo.ImageScanner

图像扫描仪。

QBluetoothDeviceInfo.ImagePrinter

一台打印机。

class MinorWearableClass

此枚举描述了可穿戴设备的次要设备类别。

常量

描述

QBluetoothDeviceInfo.UncategorizedWearableDevice

一个未分类的可穿戴设备。

QBluetoothDeviceInfo.WearableWristWatch

手表。

QBluetoothDeviceInfo.WearablePager

一个寻呼机。

QBluetoothDeviceInfo.WearableJacket

一件夹克。

QBluetoothDeviceInfo.WearableHelmet

一个头盔。

QBluetoothDeviceInfo.WearableGlasses

一副眼镜。

class MinorToyClass

此枚举描述了玩具设备的次要设备类别。

常量

描述

QBluetoothDeviceInfo.UncategorizedToy

一个未分类的玩具。

QBluetoothDeviceInfo.ToyRobot

一个玩具机器人。

QBluetoothDeviceInfo.ToyVehicle

一个玩具车。

QBluetoothDeviceInfo.ToyDoll

一个玩具娃娃或动作人偶。

QBluetoothDeviceInfo.ToyController

一个控制器。

QBluetoothDeviceInfo.ToyGame

一个游戏。

class MinorHealthClass

此枚举描述了健康设备的次要设备类别。

常量

描述

QBluetoothDeviceInfo.UncategorizedHealthDevice

未分类的健康设备。

QBluetoothDeviceInfo.HealthBloodPressureMonitor

血压监测器。

QBluetoothDeviceInfo.HealthThermometer

一个温度计。

QBluetoothDeviceInfo.HealthWeightScale

一个秤。

QBluetoothDeviceInfo.HealthGlucoseMeter

血糖仪。

QBluetoothDeviceInfo.HealthPulseOximeter

血氧饱和度计。

QBluetoothDeviceInfo.HealthDataDisplay

一个数据显示。

QBluetoothDeviceInfo.HealthStepCounter

一个计步器。

class ServiceClass

(继承自 enum.Flag) 此枚举描述了蓝牙设备的服务类别。服务类别用作服务发现的基本形式。它旨在提供设备可能提供的服务类型的列表。

常量

描述

QBluetoothDeviceInfo.NoService

该设备不提供任何服务。

QBluetoothDeviceInfo.PositioningService

该设备提供定位服务。

QBluetoothDeviceInfo.NetworkingService

该设备提供网络服务。

QBluetoothDeviceInfo.RenderingService

该设备提供渲染服务。

QBluetoothDeviceInfo.CapturingService

该设备提供捕获服务。

QBluetoothDeviceInfo.ObjectTransferService

该设备提供对象传输服务。

QBluetoothDeviceInfo.AudioService

该设备提供音频服务。

QBluetoothDeviceInfo.TelephonyService

该设备提供电话服务。

QBluetoothDeviceInfo.InformationService

该设备提供信息服务。

QBluetoothDeviceInfo.AllServices

该设备提供所有类型的服务。

class Field

(继承自 enum.Flag) 此枚举与 deviceUpdated() 信号一起使用,并指示发生变化的字段。

常量

描述

QBluetoothDeviceInfo.Field.None

没有任何值发生变化。

QBluetoothDeviceInfo.Field.RSSI

设备的rssi()值已更改。

QBluetoothDeviceInfo.Field.ManufacturerData

manufacturerData() 字段已更改

QBluetoothDeviceInfo.Field.ServiceData

serviceData() 字段已更改

QBluetoothDeviceInfo.Field.All

匹配所有可能的字段。

class CoreConfiguration

(继承自 enum.Flag) 此枚举描述了设备的配置。

常量

描述

QBluetoothDeviceInfo.UnknownCoreConfiguration

无法确定蓝牙设备的类型。

QBluetoothDeviceInfo.BaseRateCoreConfiguration

该设备是一个标准的蓝牙设备。

QBluetoothDeviceInfo.BaseRateAndLowEnergyCoreConfiguration

该设备是一个支持标准和低能耗设备的蓝牙智能设备。

QBluetoothDeviceInfo.LowEnergyCoreConfiguration

该设备是蓝牙低能耗设备。

__init__()

构造一个无效的QBluetoothDeviceInfo对象。

__init__(other)
Parameters:

其他QBluetoothDeviceInfo

构造一个QBluetoothDeviceInfo,它是other的副本。

__init__(address, name, classOfDevice)
Parameters:

构造一个QBluetoothDeviceInfo对象,包含蓝牙地址address,设备名称name和编码的设备类classOfDevice

classOfDevice 参数按以下格式编码

位数

大小

描述

0 - 1

2

未使用,设置为0。

2 - 7

6

次要设备类别。

8 - 12

5

主要设备类别。

13 - 23

11

服务类。

__init__(uuid, name, classOfDevice)
Parameters:

构造一个具有唯一uuid、设备名称name和编码设备类classOfDeviceQBluetoothDeviceInfo对象。

此构造函数是macOS和iOS上低能耗设备所必需的。CoreBluetooth API隐藏地址并提供唯一的UUID来识别设备。此UUID与服务UUID不同,并且是稍后与CoreBluetooth API和发现的设备一起工作所必需的。

address()
Return type:

QBluetoothAddress

返回设备的地址。

注意

在iOS和macOS上,此地址无效。应使用deviceUuid()。这两个平台不会为发现的蓝牙设备暴露蓝牙地址,而是使用唯一的设备标识符。

另请参阅

deviceUuid()

coreConfigurations()
Return type:

CoreConfiguration的组合

返回设备的配置。如果未设置设备配置,将返回基本速率设备配置。

deviceUuid()
Return type:

QBluetoothUuid

返回一个没有地址的蓝牙设备的唯一标识符。

通常,这个uuid在除了macOS和iOS之外的每个平台上都是无效的。它被用作这两个平台的变通方法,因为它们不为发现的蓝牙低功耗设备提供蓝牙地址。其他平台则使用address()来代替。

另请参阅

setDeviceUuid()

isCached()
Return type:

布尔

如果QBluetoothDeviceInfo对象是从缓存数据创建的,则返回true。

isValid()
Return type:

布尔

如果 QBluetoothDeviceInfo 对象有效,则返回 true,否则返回 false。

majorDeviceClass()
Return type:

MajorDeviceClass

返回设备的主要设备类别。

manufacturerData()
Return type:

.QMultiHashquint16,QByteArray

返回广告包中所有制造商数据的完整集合。

某些设备可能会为每个制造商ID提供多个制造商数据条目。一个例子可能是蓝牙低功耗设备,它分别通过广告包和扫描响应包发送不同的制造商数据。因此,返回的哈希表可能为每个制造商ID或哈希键有多个条目。

另请参阅

setManufacturerData

manufacturerData(manufacturerId)
Parameters:

manufacturerId – int

Return type:

QByteArray

返回与给定manufacturerId关联的数据。

制造商数据由蓝牙核心规范的补充定义,并包含两个部分:

  • 来自Assigned Numbers公司标识符文档的制造商特定标识符代码

  • 任意数据字节序列

数据八位组的解释由公司标识符指定的制造商定义。

注意

远程设备可能会为每个manufacturerId提供多个数据条目。此函数仅返回第一个条目。如果需要所有条目,请使用manufacturerData(),它返回一个多重哈希。

manufacturerIds()
Return type:

.quint16的列表

返回附加到此设备信息的广告包中的所有制造商ID。

minorDeviceClass()
Return type:

整数

返回设备的次要设备类别。实际信息取决于majorDeviceClass()的值。

name()
Return type:

字符串

返回分配给设备的名称。

另请参阅

setName()

__ne__(b)
Parameters:

bQBluetoothDeviceInfo

Return type:

布尔

如果两个QBluetoothDeviceInfo对象ab不相等,则返回true

__eq__(b)
Parameters:

bQBluetoothDeviceInfo

Return type:

布尔

如果两个QBluetoothDeviceInfo对象ab相等,则返回true

rssi()
Return type:

整数

返回设备上次扫描时的信号强度

另请参阅

setRssi()

serviceClasses()
Return type:

ServiceClass的组合

返回设备的服务类别。

serviceData()
Return type:

.QMultiHashQBluetoothUuid,QByteArray

返回广告包中所有服务数据的完整集合。

某些设备可能会为每个服务数据ID提供多个服务数据条目。例如,一个蓝牙低功耗设备可能分别通过广告包和扫描响应包发送不同的服务数据。因此,返回的哈希表可能每个服务数据ID或哈希键有多个条目。

另请参阅

setServiceData

serviceData(serviceId)
Parameters:

serviceIdQBluetoothUuid

Return type:

QByteArray

返回与给定serviceId关联的数据。

服务数据由蓝牙核心规范的补充定义,并包含两个部分:

  • 服务UUID

  • 任意数据字节序列

注意

远程设备可能为每个serviceId提供多个数据条目。此函数仅返回第一个条目。如果需要所有条目,请使用serviceData(),它返回一个多重哈希。

serviceIds()
Return type:

QBluetoothUuid的列表

返回附加到此设备信息的广告数据包中的所有服务数据ID。

serviceUuids()
Return type:

QBluetoothUuid的列表

返回设备支持的服务UUID列表。通常,此UUID列表表示自定义服务UUID或由ServiceClassUuid指定的服务UUID值。

setCached(cached)
Parameters:

cached – 布尔值

系统用于设置cached标志,如果QBluetoothDeviceInfo是从缓存数据创建的。缓存信息可能不如从活动设备读取的数据准确。

另请参阅

isCached()

setCoreConfigurations(coreConfigs)
Parameters:

coreConfigsCoreConfiguration 的组合

将设备的CoreConfigurations设置为coreConfigs。这将有助于区分常规设备和低能耗设备。

另请参阅

coreConfigurations()

setDeviceUuid(uuid)
Parameters:

uuidQBluetoothUuid

为没有地址的蓝牙设备设置唯一标识符 uuid。这种情况发生在 macOS 和 iOS 上,其中 CoreBluetooth API 隐藏了地址,但提供了 UUID 来识别设备/外设。

此uuid在任何其他平台上无效。

另请参阅

deviceUuid()

setManufacturerData(manufacturerId, data)
Parameters:
Return type:

布尔

设置给定manufacturerId的广告制造商data。如果插入成功则返回true,如果已经存在则返回false

自 Qt 5.14 起,data 的不同值和相同的 manufacturerId 不再相互替换,而是在设备扫描期间累积。

另请参阅

manufacturerData

setName(name)
Parameters:

name – str

设置设备的name

另请参阅

name()

setRssi(signal)
Parameters:

signal – int

设置signal强度值,内部使用。

另请参阅

rssi()

setServiceData(serviceId, data)
Parameters:
Return type:

布尔

设置给定serviceId的广告服务data。如果插入成功则返回true,如果已经存在则返回false

另请参阅

serviceData

setServiceUuids(uuids)
Parameters:

uuids – QBluetoothUuid 的列表

将服务UUID列表设置为uuids

另请参阅

serviceUuids()