class QNetworkInformation#

QNetworkInformation 通过本地后端公开各种网络信息。 更多...

Inheritance diagram of PySide6.QtNetwork.QNetworkInformation

概述#

属性#

方法#

信号#

静态函数#

注意

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

详细描述#

QNetworkInformation 通过插件提供了一个跨平台的网络相关信息接口。

各种插件可以支持各种功能,因此您可以根据所需的功能加载()插件。

QNetworkInformation 是单例的,在成功加载()后继续存在,直到 QCoreApplication 对象被销毁。如果您销毁并重新创建 QCoreApplication 对象,您必须再次调用 load()。

另请参阅

功能

可达性#

常量

描述

QNetworkInformation.Reachability.Unknown

如果返回此值,则可能已连接,但操作系统尚未确认完全连接,或此功能不受支持。

QNetworkInformation.Reachability.Disconnected

表示系统可能根本无法连接。

QNetworkInformation.Reachability.Local

表示系统连接到网络,但可能只能访问本地网络上的设备。

QNetworkInformation.Reachability.Site

表示系统连接到网络,但可能只能访问本地子网或内部网络的设备。

QNetworkInformation.Reachability.Online

表示系统连接到网络并且可以访问互联网。

另请参阅

reachable

TransportMedium#

列出可以通过它们连接到互联网的当前已识别的媒体。

常量

描述

QNetworkInformation.TransportMedium.Unknown

如果操作系统报告没有活动介质,活动介质不被 Qt 识别,或者TransportMedium功能不受支持,则返回。

QNetworkInformation.TransportMedium.Ethernet

表示当前活动连接正在使用以太网。注意:此值还可能在Windows连接到蓝牙个人区域网络时返回。

QNetworkInformation.TransportMedium.Cellular

表示当前活动连接正在使用蜂窝网络。

QNetworkInformation.TransportMedium.WiFi

表示当前活动连接正在使用 Wi-Fi。

QNetworkInformation.TransportMedium.Bluetooth

表示当前活动连接正在使用蓝牙。

另请参阅

transportMedium

自版本 6.3 以来新增。

Feature#

继承自 enum.Flag。列出插件可能当前支持的所有功能。这可以在 QNetworkInformation::load() 中使用。

常量

描述

QNetworkInformation.Feature.Reachability

如果插件支持此功能,则 reachability 属性将提供有用的结果。否则,它将始终返回 Reachability::Unknown。请参阅Reachability

QNetworkInformation.Feature.CaptivePortal

如果插件支持此功能,则 isBehindCaptivePortal 属性将提供有用的结果。否则,它将始终返回 false

QNetworkInformation.Feature.TransportMedium

如果插件支持此功能,则 transportMedium 属性将提供有用的结果。否则,它将始终返回 TransportMedium::Unknown。请参阅TransportMedium

QNetworkInformation.Feature.Metered

如果插件支持此功能,则 isMetered 属性将提供有用的结果。否则,它将始终返回 false

注意

当使用 from __feature__ import true_property 时,可以直接使用属性,否则可通过访问函数。

property isBehindCaptivePortal(): bool#

此属性表示用户设备是否位于网络门户之后。

此属性指示用户的设备当前是否已知位于网络门户之后。此功能依赖于操作系统对网络门户的检测,并且不支持不报告此信息的系统。在不支持此功能的情况下,它将始终返回 false

访问函数
property isMetered(): bool#

此属性用于检测当前连接是否计费。

此属性返回当前连接是否(已知为)计费。您可以使用此属性作为指导因素来判断您的应用程序是否应该执行某些网络请求或上传。例如,如果您不希望在 true 的情况下上传日志或诊断信息。

访问函数
property reachability(): QNetworkInformation.Reachability#

此属性表示系统网络连通状态的当前状态。

指示可以预期的连通级别。请注意,这仅基于插件/操作系统的报告。在某些情况下,这可能是错误的。例如,在Windows中,默认情况下,“在线”检查是通过Windows连接到微软拥有的服务器来进行的。如果由于任何原因阻止了该服务器,则会假设它无法访问在线。因此,您不应该在尝试建立连接之前使用此作为预检查。

访问函数
属性 transportMediumᅟ: QNetworkInformation.TransportMedium#

此属性保留应用程序当前活动的传输介质。

此属性返回操作系统提供此类信息时应用程序的当前活动传输介质。

当当前传输介质更改时,会发出信号,这可以发生在用户离开WiFi网络的范围、拔掉以太网电缆或启用飞行模式时。

访问函数
静态 availableBackends()#
返回类型:

字符串列表

返回所有当前可用后端的名称列表。

backendName()#
返回类型:

str

返回当前加载的后端名称。

静态 instance()#
返回类型:

QNetworkInformation

返回QNetworkInformation的实例指针(如有)。

另请参阅

load()

isBehindCaptivePortal()#
返回类型:

bool

属性isBehindCaptivePortalᅟ的获取器。

isBehindCaptivePortalChanged(state)#
参数:

状态 – bool

isBehindCaptivePortalᅟ属性的属性变更通知信号。

isMetered()#
返回类型:

bool

属性 isMetered 的获取器。

isMeteredChanged(isMetered)#
参数:

isMetered – bool

属性 isMetered 的通知信号。

static load(features)#
参数:

featuresFeature 的组合

返回类型:

bool

注意

此函数已弃用。

请使用 loadBackendByFeatures() 代替。

static load(backend)
参数:

backend – str

返回类型:

bool

注意

此函数已弃用。

请使用 loadBackendByName() 代替。

static loadBackendByFeatures(features)#
参数:

featuresFeature 的组合

返回类型:

bool

加载支持特定 features 的后端。

如果成功加载请求的后端或后端已加载,则返回 true。否则返回 false

另请参阅

实例

static loadBackendByName(backend)#
参数:

backend – str

返回类型:

bool

尝试加载名称与 backend 匹配的后端(不区分大小写)。

如果成功加载请求的后端或后端已加载,则返回 true。否则返回 false

另请参阅

实例

static loadDefaultBackend()#
返回类型:

bool

尝试加载平台默认后端。

注意

从6.7版本开始,尝试加载任何支持可达性的后端,如果平台默认的后端不可用或无法加载。如果这也失败,它将回退到仅返回所有属性默认值的后端。

此平台到插件的映射如下

平台

插件名称

Windows

networklistmanager

苹果(macOS/iOS)

scnetworkreachability

Android

android

Linux

networkmanager

此功能提供便利,因为早期的逻辑已经足够好。如果您需要特定的插件,则应直接调用loadBackendByName()loadBackendByFeatures()

确定要加载的合适后端,并返回true,如果此后端已加载或成功加载。如果已加载其他后端或所选后端加载失败,则返回false

另请参阅

instance() load()

reachability()#
返回类型:

可达性

reachabilityᅟ的获取器。

reachabilityChanged(newReachability)#
参数:

newReachabilityReachability

reachabilityᅟ属性的属性更改通知信号。

supportedFeatures()#
返回类型:

Feature的组合

返回当前后端支持的所有功能。

supports(features)#
参数:

featuresFeature 的组合

返回类型:

bool

如果当前加载的后端支持features,则返回true

transportMedium()#
返回类型:

传输介质

transportMediumᅟ的获取器。

transportMediumChanged(current)#
参数:

currentTransportMedium

属性 transportMedium 的通知信号。