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

Класс TrustedSources

(Sailfish::Mdm::TrustedSources)

Класс TrustedSources позволяет управлять списком доверенных источников на устройстве и управлять разрешением на установку пакетов без источников. Подробнее…

Заголовочный файл: #include <mdm-trustedsources.h>

Публичные типы

  • enum Result { Success, InternalError, UnexistingSourceError, DatabaseError }

Публичные методы

Сигналы

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

Класс TrustedSources позволяет управлять списком доверенных источников на устройстве и управлять разрешением на установку пакетов без источников.

Для использования данного класса в qmake-настройки проекта клиента следует добавить следующее:

 CONFIG += link_pkgconfig
 PKGCONFIG += sailfishmdm

Пример использования:

 #include <mdm-trustedsources.h>
 #include <QDebug>

 using namespace Sailfish::Mdm;

 void example()
 {
     TrustedSources ts;

     auto dumpTrustedSource = [](const TrustedSource &source) {
         qDebug() << source.keyID << source.subject;
     };

     auto onMissingSourceAllowedChanged = [](bool allowed) {
         qDebug() << "Пакеты без исходной подписи (source signature)" << (allowed ? "допустимы" : "недопустимы");
     };

     auto onWebPwaSourceAllowedChanged = [](bool allowed) {
         qDebug() << "PWA packages from browser are" << (allowed ? "allowed" : "disallowed");
     };

     QObject::connect(&ts, &TrustedSources::sourceAdded,   dumpTrustedSource);
     QObject::connect(&ts, &TrustedSources::sourceRemoved, dumpTrustedSource);
     QObject::connect(&ts, &TrustedSources::sourceChanged, dumpTrustedSource);
     QObject::connect(&ts, &TrustedSources::missingSourceAllowedChanged, onMissingSourceAllowedChanged);
     QObject::connect(&ts, &TrustedSources::webPwaSourceAllowedChanged, onWebPwaSourceAllowedChanged);

     QList<TrustedSource> sources;

     if (ts.getSourceList(sources) != TrustedSources::Result::Success)
         qDebug() << "Произошла ошибка";

     if (ts.addSource("<source-key-id>", "<source-subject>") != TrustedSources::Result::Success)
         qDebug() << "Произошла ошибка";

     if (ts.removeSource("<source-key-id>") != TrustedSources::Result::Success)
         qDebug() << "Произошла ошибка";

     if (ts.bindPackageToSource("<package-id>", "<source-key-id>") != TrustedSources::Result::Success)
         qDebug() << "Произошла ошибка";

     if (ts.setMissingSourceAllowed(false) != TrustedSources::Result::Success)
         qDebug() << "Произошла ошибка";

     if (ts.setWebPwaSourceAllowed(false) != TrustedSources::Result::Success)
         qDebug() << "Произошла ошибка";
 }

Описание типов класса

enum TrustedSources::Result

Описывает результат операции над доверенными источниками.

Константа Значение Описание
Sailfish::Mdm::TrustedSources::Success 0 Действие выполнено успешно
Sailfish::Mdm::TrustedSources::InternalError 1 При выполнении действия возникла внутренняя ошибка API.
Sailfish::Mdm::TrustedSources::UnexistingSourceError 2 Ошибка, вызванная операцией над несуществующим источником.
Sailfish::Mdm::TrustedSources::DatabaseError 3 Внутренняя ошибка, возникшая при работе с базой данных доверенных источников.

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

TrustedSources::TrustedSources(QObject *parent = nullptr)

Конструктор по умолчанию для класса TrustedSources.

Result TrustedSources::addSource(const QString &sourceKeyID, const QString &sourceSubject)

Добавляет источник с указанными sourceKeyID и sourceSubject в список доверенных.

Result TrustedSources::bindPackageToSource(const QString &packageID, const QString &sourceKeyID)

Привязывает пакет с заданным packageID к доверенному источнику с заданным sourceKeyID.

Result TrustedSources::getMissingSourceAllowed(bool &allowed)

Проверяет, разрешена ли установка пакетов без исходной подписи (source signature), и записывает результат в выходной параметр allowed в случае успеха.

Result TrustedSources::getSourceList(QList<TrustedSource> &sourceList)

Получает список доверенных источников и в случае успеха помещает его в выходной параметр sourceList.

Result TrustedSources::getSourceSignatureRequired(bool &required)

Проверяет, включено ли требование подписи источника, и в случае успеха помещает состояние требования в выходной параметр required.

Result TrustedSources::getWebPwaSourceAllowed(bool &allowed)

Проверяет, разрешена ли установка PWA-пакетов из браузера, и записывает результат в выходной параметр allowed в случае успеха.

[signal] void TrustedSources::missingSourceAllowedChanged(bool allowed)

Сигнал испускается при изменении разрешения на установку пакетов без исходной подписи (source signature). Параметр allowed содержит новое значение.

Result TrustedSources::removeSource(const QString &sourceKeyID)

Удаляет источник с указанным sourceKeyID из списка доверенных.

Result TrustedSources::setMissingSourceAllowed(bool allowed)

Разрешает или запрещает установку пакетов без исходной подписи (source signature) в зависимости от параметра allowed.

Result TrustedSources::setSourceSignatureRequired(bool required)

Включает требование подписи источника, если параметр required имеет значение true, в противном случае отключает требование подписи источника.

Result TrustedSources::setWebPwaSourceAllowed(bool allowed)

Разрешает или запрещает установку PWA-пакетов из браузера в зависимости от параметра allowed.

[signal] void TrustedSources::sourceAdded(const TrustedSource &source)

Сигнал, испускаемый при добавлении нового источника в список доверенных источников.

[signal] void TrustedSources::sourceChanged(const TrustedSource &source)

Сигнал, испускаемый при изменении доверенного источника, например, при привязке пакета к источнику.

[signal] void TrustedSources::sourceRemoved(const TrustedSource &source)

Сигнал, испускаемый при удалении источника из списка доверенных.

[signal] void TrustedSources::sourceSignatureRequiredChanged(bool required)

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

[signal] void TrustedSources::webPwaSourceAllowedChanged(bool allowed)

Сигнал испускается при изменении разрешения на установку PWA-пакетов из браузера. Параметр allowed содержит новое значение.

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

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