QPermission Class
型付き権限の不透明なラッパー。詳細...
| ヘッダー: | #include <QPermissions> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Core) target_link_libraries(mytarget PRIVATE Qt6::Core) |
| qmake: | QT += core |
| 以下のように: | Qt 6.5 以降 |
パブリック関数
| QPermission() | |
| 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();
}型付き権限
以下の権限が利用可能です:
Bluetooth周辺機器へのアクセス | |
ユーザーのカレンダーへのアクセス | |
写真や動画の撮影のためのカメラへのアクセス | |
ユーザーの連絡先にアクセスする | |
ユーザーの現在地へのアクセス | |
音声のモニタリングや録音のためにマイクにアクセスする |
「アプリケーションの権限」も参照してください 。
メンバー関数のドキュメント
[explicit noexcept default] QPermission::QPermission()
QPermission のインスタンスをデフォルトコンストラクタで生成します。
template <typename T> requires if_permission<T> QPermission::QPermission(const T &type)
指定されたtyped permission type から権限を生成します。
この型は、権限の確認や要求の際に自動的に使用されるため、明示的に生成する必要はありません。
制約
T がtyped permission クラスのいずれかである場合にのみ、オーバーロード解決の対象となります:
Bluetooth 周辺機器へのアクセス | |
ユーザーのカレンダーへのアクセス | |
写真や動画の撮影のためのカメラへのアクセス | |
ユーザーの連絡先にアクセスする | |
ユーザーの現在地へのアクセス | |
音声のモニタリングや録音を行うためのマイクへのアクセス |
Qt::PermissionStatus QPermission::status() const
権限のステータスを返します。
QMetaType QPermission::type() const
権限の型を返します。
template <typename T> requires if_permission<T> std::optional<T> QPermission::value() const
T 型のtyped permission を返します。このQPermission オブジェクトに が含まれていない場合は、std::nullopt を返します。
要求する型付き権限を動的に選択するには、type() を使用します。
制約
T がtyped permission クラスのいずれかである場合にのみ、オーバーロード解決の対象となります:
Bluetooth 周辺機器へのアクセス | |
ユーザーのカレンダーへのアクセス | |
写真や動画の撮影のためにカメラにアクセスする | |
ユーザーの連絡先にアクセスする | |
ユーザーの現在地へのアクセス | |
音声のモニタリングや録音のためのマイクへのアクセス |
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.