Класс QNetworkInformation
Класс QNetworkInformation предоставляет доступ к различной сетевой информации через родные бэкэнды. Подробнее...
| Заголовок: | #include <QNetworkInformation> |
| CMake: | find_package(Qt6 COMPONENTS Network REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Network) |
| qmake: | QT += network |
| С тех пор: | Qt 6.1 |
| Наследует: | QObject |
Типы публичного доступа
| Перечисление | Feature { Доступность, Защищённый_портал } |
| Флаги | Features |
| Перечисление | Доступность { Неизвестно, Отключено, Локальное, Сайт, Онлайн } |
Свойства
- isBehindCaptivePortal : const bool
- доступность : const Доступность
Публичные функции
| QString | backendName() const |
| bool | isBehindCaptivePortal() const |
| QNetworkInformation::Доступность | доступность() const |
| bool | supports(QNetworkInformation::Features features) const |
Сигналы
| void | isBehindCaptivePortalChanged(bool state) |
| void | reachabilityChanged(QNetworkInformation::Доступность newReachability) |
Статические публичные члены
| QStringList | доступныеБэкэнды() |
| QNetworkInformation * | instance() |
| bool | загрузить(QStringView backend) |
| bool | загрузить(QNetworkInformation::Features features) |
Подробное описание
QNetworkInformation предоставляет кроссплатформенный интерфейс к сетевой информации через плагины.
Различные плагины могут поддерживать различные функциональные возможности, поэтому вы можете загрузить() плагины, основываясь на необходимых функциях.
QNetworkInformation — это синглтон и существует с момента первого успешного вызова загрузить() до удаления объекта QCoreApplication. Если вы удаляете и повторно создаёте объект QCoreApplication, необходимо снова вызвать загрузить().
См. также QNetworkInformation::Feature.
Документация по типам членов
Перечисление QNetworkInformation::FeatureФлаги QNetworkInformation::Features
Список всех функций, которые плагин может в данный момент поддерживать. Это может быть использовано в QNetworkInformation::load().
| Константа | Значение | Описание |
|---|---|---|
QNetworkInformation::Feature::Reachability |
0x1 |
Если плагин поддерживает эту функцию, то свойство reachability обеспечит полезные результаты. В противном случае оно всегда вернёт Reachability::Unknown. См. также QNetworkInformation::Reachability. |
QNetworkInformation::Feature::CaptivePortal |
0x2 |
Если плагин поддерживает эту функцию, то свойство isBehindCaptivePortal обеспечит полезные результаты. В противном случае оно всегда вернёт false. |
Тип Features является псевдонимом для QFlags<Feature>. Он хранит логическое ИЛИ сочетание значений Feature.
Перечисление QNetworkInformation::Доступность
| Константа | Значение | Описание |
|---|---|---|
QNetworkInformation::Reachability::Unknown |
0 |
Если возвращается это значение, то мы можем быть подключены, но ОС ещё не подтвердила полную подключённость, или эта функция не поддерживается. |
QNetworkInformation::Reachability::Disconnected |
1 |
Указывает, что система, возможно, не имеет подключения к сети. |
QNetworkInformation::Reachability::Local |
2 |
Указывает, что система подключена к сети, но может иметь доступ только к устройствам в локальной сети. |
QNetworkInformation::Reachability::Site |
3 |
Указывает, что система подключена к сети, но может иметь доступ только к устройствам в локальном подсети или интрасети. |
QNetworkInformation::Reachability::Online |
4 |
Указывает, что система подключена к сети и имеет доступ к Интернету. |
См. также QNetworkInformation::доступность.
Документация по свойствам
[read-only, since 6.2] isBehindCaptivePortal : const bool
Указывает, находится ли устройство пользователя за защищённым порталом.
Это свойство указывает, известно ли, что устройство пользователя в данный момент находится за защищённым порталом. Эта функциональность основана на обнаружении защищённых порталов операционной системой и не поддерживается системами, которые не сообщают об этом. В системах, где это не поддерживается, оно всегда вернёт false.
Это свойство было добавлено в Qt 6.2.
Функции доступа:
| bool | isBehindCaptivePortal() const |
Сигнал уведомления:
| void | isBehindCaptivePortalChanged(bool state) |
[read-only] доступность : const Доступность
Это свойство содержит текущее состояние сетевого подключения системы.
Указывает уровень ожидаемой подключённости. Обратите внимание, что это основано только на том, что сообщает плагин/операционная система. В некоторых случаях это может быть неверно. Например, в Windows проверка «Онлайн» по умолчанию выполняется Windows с подключением к серверу Microsoft. Если этот сервер по какой-либо причине заблокирован, то он предположит, что нет доступности «Онлайн». По этой причине не следует использовать это как предварительную проверку перед попыткой подключения.
Функции доступа:
| QNetworkInformation::Доступность | доступность() const |
Сигнал уведомления:
| void | reachabilityChanged(QNetworkInformation::Доступность newReachability) |
Документация по функциям членов
[static] QStringList QNetworkInformation::доступныеБэкэнды()
Возвращает список имён всех доступных в данный момент бэкэндов.
QString QNetworkInformation::backendName() const
Возвращает имя текущего загруженного бэкэнда.
[static] QNetworkInformation *QNetworkInformation::instance()
Возвращает указатель на экземпляр QNetworkInformation, если таковой имеется.
См. также загрузить().
[static] bool QNetworkInformation::загрузить(QStringView backend)
Попытка загрузить бэкэнд, имя которого соответствует backend (регистронезависимо).
Возвращает true если удалось загрузить запрошенный бэкенд или если он уже был загружен. Возвращает false в противном случае
См. также instance.
[static] bool QNetworkInformation::load(QNetworkInformation::Features features)
Загрузить бэкенд, поддерживающий features.
Возвращает true если удалось загрузить запрошенный бэкенд или если он уже был загружен. Возвращает false в противном случае
См. также instance.
bool QNetworkInformation::supports(QNetworkInformation::Features features) const
Возвращает true если текущий загруженный бэкенд поддерживает features.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.2/qnetworkinformation.html