Документация
ОС Аврора 5.2.0

Класс GlobalSettings

(Aurora::Location::GlobalSettings)

Класс GlobalSettings предназначен для получения и изменения глобальных параметров геолокации в приложениях для ОС Аврора. Он объединяет сведения о доступности служб определения местоположения, режиме работы геолокации и поддержке спутникового позиционирования. Такой набор данных позволяет приложению своевременно выбирать источник местоположения и корректно реагировать на изменения системных настроек.

Предоставляет геттеры и сеттеры свойств для глобальных настроек геолокации. Подробнее...

Подключение: #include <GlobalSettings>

Свойства

Публичные функции

GlobalSettings(QObject *parent = nullptr)
virtual ~GlobalSettings()
QStringList enabledLbsProviders() const
void initializeAsync()
Status::Enum lbsStatus() const
LocationMode::Enum locationMode() const
Status::Enum locationStatus() const
Status::Enum satelliteStatus() const
Status::Enum satelliteSupport() const
void setEnabledLbsProvidersAsync(QStringList providers)
void setLbsStatusAsync(Status::Enum status)
void setLocationModeAsync(LocationMode::Enum mode)
void setLocationStatusAsync(Status::Enum status)
void setSatelliteStatusAsync(Status::Enum status)
QStringList supportedLbsProviders() const

Помимо конструктора и initializeAsync(), класс предоставляет геттеры для мгновенного чтения текущих значений и асинхронные сеттеры для изменения настроек.

Сигналы

void enabledLbsProvidersChanged(QStringList providers)
void error(const QString &message)
void initializeFinished(bool success)
void lbsStatusChanged(Status::Enum status)
void locationModeChanged(LocationMode::Enum mode)
void locationStatusChanged(Status::Enum status)
void satelliteStatusChanged(Status::Enum status)
void satelliteSupportChanged(Status::Enum status)
void supportedLbsProvidersChanged(QStringList providers)

Сигналы класса делятся на сигналы изменения свойств и служебные сигналы. Сигналы изменения свойств позволяют приложению отслеживать внешние обновления настроек, а сигналы error() и initializeFinished() сообщают о ходе инициализации и возникновении ошибок.

Подробное описание

Предоставляет геттеры и сеттеры свойств для глобальных настроек геолокации.

Этот класс работает в комбинированном синхронно-асинхронном режиме:

  • Свойства инициализируются при создании объекта, что позволяет затем получать их значения через геттеры мгновенно.
  • Когда свойство обновляется извне, оно мгновенно обновляется, и испускается соответствующий сигнал.
  • Их сеттеры работают в асинхронном режиме.

Практическое использование класса сводится к созданию объекта, ожиданию сигнала initializeFinished() и последующей работе с геттерами и асинхронными сеттерами. Для отслеживания внешних изменений следует подписаться на соответствующие сигналы свойств.

Описание свойств

enabledLbsProviders : QStringList

Хранит список активных провайдеров LBS. Список определяет, какие LBS-провайдеры разрешено использовать для определения местоположения; изменение выполняется асинхронно через setEnabledLbsProvidersAsync().

Функции доступа:

QStringList enabledLbsProviders() const
void setEnabledLbsProvidersAsync(QStringList providers)

Сигнал уведомления:

void enabledLbsProvidersChanged(QStringList providers)

lbsStatus : Status::Enum

Указывает состояние LBS-провайдеров в качестве источника данных о местоположении. Свойство позволяет узнать, разрешено ли использование LBS-провайдеров, и изменить это разрешение асинхронно. Чтобы включить LBS, свойство locationMode не должно быть установлено в значение DeviceOnlyMode.

Функции доступа:

Status::Enum lbsStatus() const
void setLbsStatusAsync(Status::Enum status)

Сигнал уведомления:

void lbsStatusChanged(Status::Enum status)

locationMode : LocationMode::Enum

Содержит режим геолокации. Режим задаёт общую политику определения местоположения, например выбор между различными наборами источников; изменение выполняется асинхронно.

Функции доступа:

LocationMode::Enum locationMode() const
void setLocationModeAsync(LocationMode::Enum mode)

Сигнал уведомления:

void locationModeChanged(LocationMode::Enum mode)

locationStatus : Status::Enum

Содержит глобальное состояние службы геолокации на устройстве и используется для контроля доступности определения местоположения.

Функции доступа:

Status::Enum locationStatus() const
void setLocationStatusAsync(Status::Enum status)

Сигнал уведомления:

void locationStatusChanged(Status::Enum status)

satelliteStatus : Status::Enum

Указывает, может ли GNСС использоваться в качестве источника позиционирования. Чтобы включить GNСС, свойство locationMode не должно быть установлено в значение «BatterySavingMode». Может изменяться асинхронно через setSatelliteStatusAsync().

Функции доступа:

Status::Enum satelliteStatus() const
void setSatelliteStatusAsync(Status::Enum status)

Сигнал уведомления:

void satelliteStatusChanged(Status::Enum status)

satelliteSupport : const Status::Enum

Указывает, поддерживается ли GNSS на устройстве. Свойство доступно только для чтения.

Функции доступа:

Status::Enum satelliteSupport() const

Сигнал уведомления:

void satelliteSupportChanged(Status::Enum status)

supportedLbsProviders : const QStringList

Содержит список LBS-провайдеров, поддерживаемых на устройстве. Свойство доступно только для чтения и помогает выбрать допустимые значения для enabledLbsProviders.

Функции доступа:

QStringList supportedLbsProviders() const

Сигнал уведомления:

void supportedLbsProvidersChanged(QStringList providers)

Описание функций-членов

GlobalSettings::GlobalSettings(QObject *parent = nullptr)

По умолчанию создает экземпляр класса GlobalSettings.

[virtual] GlobalSettings::~GlobalSettings()

Уничтожает экземпляр GlobalSettings. Деструктор является виртуальным.

[signal] void GlobalSettings::error(const QString &message)

Испускается при возникновении ошибки. Параметр message содержит описание ошибки.

void GlobalSettings::initializeAsync()

Приступает к инициализации объекта. После завершения инициализации испускается сигнал initializeFinished(true), и свойства объекта инициализируются корректными значениями. Если инициализация завершилась с ошибкой, испускается сигнал initializeFinished(false), и свойства объекта переводятся в состояние Unknown.

[signal] void GlobalSettings::initializeFinished(bool success)

Сигнал испускается после завершения initializeAsync(). Параметр success указывает, прошла ли успешно инициализация.

Мы используем cookies для персонализации сайта и его более удобного использования. Вы можете запретить cookies в настройках браузера.

Пожалуйста ознакомьтесь с политикой использования файлов cookies.