Sur cette page

QBluetoothPermission Class

Accéder aux périphériques Bluetooth. Plus d'informations...

En-tête : #include <QPermissions>
CMake : find_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::Core)
qmake : QT += core
Depuis : Qt 6.5

Types publics

(since 6.6) enum CommunicationMode { Access, Advertise, Default }
flags CommunicationModes

Fonctions publiques

(since 6.6) QBluetoothPermission::CommunicationModes communicationModes() const
(since 6.6) void setCommunicationModes(QBluetoothPermission::CommunicationModes modes)

Description détaillée

Exigences

Pour demander cette autorisation au moment de l'exécution, les déclarations d'utilisation suivantes, spécifiques à la plate-forme, doivent être faites au moment de la construction :

Plate-formeType de plate-forme
PommeDescription de l'utilisationNSBluetoothAlwaysUsageDescription
Androiduses-permissionJusqu'à Android 11 (niveau API < 31) :
  • android.permission.BLUETOOTH
  • android.permission.ACCESS_FINE_LOCATION

À partir d'Android 12 (niveau API >= 31) :

  • android.permission.BLUETOOTH_ADVERTISE
  • android.permission.BLUETOOTH_CONNECT
  • android.permission.BLUETOOTH_SCAN

Veuillez consulter les types de déclaration d'utilisation individuels pour savoir comment les ajouter à votre projet.

Note : Depuis Qt 6.8.1, la permission ACCESS_FINE_LOCATION n'est plus demandée si le niveau API >= 31. Cela peut limiter certains résultats de balayage Bluetooth. Les utilisateurs qui ont besoin de ces résultats doivent demander l'autorisation de localisation séparément (voir precise location) et s'assurer que l'autorisation BLUETOOTH_SCAN n'a pas l'attribut android:usesPermissionFlags="neverForLocation". Pour définir et personnaliser les autorisations dans le manifeste de l'application, voir ce guide.

Voir aussi QPermission, QCoreApplication::requestPermission(), QCoreApplication::checkPermission(), et Permissions d'application.

Membre Type Documentation

[since 6.6] enum QBluetoothPermission::CommunicationMode
flags QBluetoothPermission::CommunicationModes

Cette énumération est utilisée pour contrôler les modes de communication Bluetooth autorisés.

ConstanteValeurDescription du mode de communication
QBluetoothPermission::Access0x01Permet à cet appareil d'accéder à d'autres appareils Bluetooth. Cela inclut la recherche de dispositifs à proximité et la connexion à ces derniers.
QBluetoothPermission::Advertise0x02Autoriser d'autres appareils Bluetooth à découvrir cet appareil.
QBluetoothPermission::DefaultAccess | AdvertiseCette configuration est utilisée par défaut.

Remarque : les autorisations détaillées ne sont actuellement prises en charge que sur Android 12 et les versions plus récentes. Sur les versions plus anciennes d'Android, ainsi que sur les systèmes d'exploitation d'Apple, n'importe quel mode entraîne un accès complet à Bluetooth.

Cette énumération a été introduite dans Qt 6.6.

Le type CommunicationModes est un typedef pour QFlags<CommunicationMode>. Il stocke une combinaison OR de valeurs CommunicationMode.

Documentation des fonctions membres

[since 6.6] QBluetoothPermission::CommunicationModes QBluetoothPermission::communicationModes() const

Renvoie les modes de communication Bluetooth autorisés.

Cette fonction a été introduite dans Qt 6.6.

Voir aussi setCommunicationModes().

[since 6.6] void QBluetoothPermission::setCommunicationModes(QBluetoothPermission::CommunicationModes modes)

Définit les modes de communication Bluetooth autorisés à modes.

Remarque : une instance de CommunicationModes construite par défaut n'a pas de sens, de sorte qu'une tentative de définir un tel mode soulèvera un qWarning() et reviendra à l'utilisation du mode Default.

Cette fonction a été introduite dans Qt 6.6.

Voir aussi communicationModes().

© 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.