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

D-Bus интерфейс ru.omp.AuthService.Devlock

Интерфейс позволяет заблокировать экран или отследить подобную блокировку. Подробнее…

Шина: системная
Служба: ru.omp.AuthService
Объект: /ru/omp/AuthService/Devlock
Интерфейс: ru.omp.AuthService.Devlock

Сигналы

Методы

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

Интерфейс позволяет заблокировать экран или отследить подобную блокировку.

Описание сигналов

StateChanged(int state)

Испускается при изменении состояния AuthService. Возможные значения приведены в таблице:

Опция Описание
Unlocked Экран устройства разблокирован.
Locked Экран устройства заблокирован.

Описание методов

int GetState()

Возвращает текущее состояние AuthService. Возможные значения те же, что и у сигнала StateChanged.

bool SetState(int state)

Изменяет текущее состояние AuthService. Данный метод требует наличия привилегий: владелец вызывающего процесса должен входить в группу auth-factor. Возможные значения те же, что и у сигнала StateChanged.

Пример блокировки экрана с помощью метода SetState:

const QString authdService = QStringLiteral("ru.omp.AuthService");
const QString authdDevlockPath = QStringLiteral("/ru/omp/AuthService/Devlock");
const QString authdDevlockInterface = QStringLiteral("ru.omp.AuthService.Devlock");
const QString setStateMethod = QStringLiteral("SetState");

//
// 0 — разблокирован (Unlocked)
// 1 — заблокирован (Locked)
//
const int32_t lockScreenValue = 1;

bool AuthdCommunicator::lockScreen()
{
    QDBusConnection sysBus = QDBusConnection::systemBus();
    if (!sysBus.isConnected())
        return false;

    QDBusMessage message = QDBusMessage::createMethodCall(authdService,
                                                          authdDevlockPath,
                                                          authdDevlockInterface,
                                                          setStateMethod);

    QVariantList args = {QVariant::fromValue<int32_t>(lockScreenValue)};
    message.setArguments(args);

    bool success = sysBus.send(message);

    qDebug() << __func__ << success;

    return true;
}

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

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