QPermission Class

型付きパーミッションの不透明なラッパー。詳細...

Header: #include <QPermissions>
CMake: find_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::Core)
qmake: QT += core
Since: Qt 6.5

パブリック関数

QPermission(const T &type)
Qt::PermissionStatus status() const
QMetaType type() const
std::optional<T> value() const

詳細説明

QPermission クラスはtyped permission の不透明なラッパーです。この型はパーミッションのチェックやリクエストの際に自動的に使用されるため、明示的に作成する必要はありません:

qApp->checkPermission(QCameraPermission{});

パーミッションを要求するとき、与えられたファンクタはQPermissionのインスタンスを渡されます:

qApp->requestPermission(QCameraPermission{}, [](const QPermission &permission) {
    if (permission.status() == Qt::PermissionStatus:Granted)
        takePhoto();
});

型付けされたオリジナルのパーミッションのプロパティを検査するには、value() 関数を使用します:

QLocationPermission locationPermission;
locationPermission.setAccuracy(QLocationPermission::Precise);
qApp->requestPermission(locationPermission, this, &LocationWidget::permissionUpdated);
void LocationWidget::permissionUpdated(const QPermission &permission)
{
    if (permission.status() != Qt::PermissionStatus:Granted)
        return;
    auto locationPermission = permission.value<QLocationPermission>();
    if (!locationPermission || locationPermission->accuracy() != QLocationPermission::Precise)
        return;
    updatePreciseLocation();
}

型付きパーミッション

以下のパーミッションが利用できる:

QBluetoothPermission

Bluetooth周辺機器へのアクセス

QCalendarPermission

ユーザーのカレンダーへのアクセス

QCameraPermission

写真やビデオを撮影するためのカメラへのアクセス

QContactsPermission

ユーザーの連絡先へのアクセス

QLocationPermission

位置情報へのアクセス

QMicrophonePermission

音声のモニタリングや録音のためのマイクへのアクセス

アプリケーションのアクセス許可」も参照してください

メンバー関数ドキュメント

template <typename T, QPermission::if_permission<T> = true> QPermission::QPermission(const T &type)

与えられたtyped permission type からパーミッションを構築する。

この型はパーミッションのチェックやリクエスト時に自動的に使用されるので、明示的に構築する必要はありません。

このコンストラクタは、Ttyped permission クラスの1つである場合にのみ、オーバーロード解決に参加します:

QBluetoothPermission

Bluetooth 周辺機器へのアクセス

QCalendarPermission

ユーザーのカレンダーへのアクセス

QCameraPermission

写真やビデオを撮るためのカメラへのアクセス

QContactsPermission

ユーザーの連絡先へのアクセス

QLocationPermission

ユーザーの位置情報へのアクセス

QMicrophonePermission

音声をモニタリングまたは録音するためのマイクへのアクセス

Qt::PermissionStatus QPermission::status() const

権限のステータスを返します。

QMetaType QPermission::type() const

権限のタイプを返します。

template <typename T, QPermission::if_permission<T> = true> std::optional<T> QPermission::value() const

T 型のtyped permission を返し、このQPermission オブジェクトにstd::nullopt が含まれていない場合は を返します。

どの型パーミッションを要求するかを動的に選択するには、type() を使用する。

この関数は、Ttyped permission クラスの1つである場合にのみ、オーバーロード解決に参加します:

QBluetoothPermission

Bluetooth 周辺機器へのアクセス

QCalendarPermission

ユーザーのカレンダーへのアクセス

QCameraPermission

写真やビデオを撮るためのカメラへのアクセス

QContactsPermission

ユーザーの連絡先へのアクセス

QLocationPermission

ユーザーの位置情報へのアクセス

QMicrophonePermission

音声のモニタリングや録音のためのマイクへのアクセス

本書に含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。