Sur cette page

QBluetoothPermission Class

Accéder aux périphériques Bluetooth. En savoir plus...

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

Conditions requises

Pour demander cette autorisation lors de l'exécution, les déclarations d'utilisation spécifiques à la plateforme suivantes doivent être effectuées lors de la compilation :

PlateformeType
AppleDescription de l'utilisationNSBluetoothAlwaysUsageDescription
Androiduses-permissionJusqu'à Android 11 (niveau d'API < 31) :
  • android.permission.BLUETOOTH
  • android.permission.ACCESS_FINE_LOCATION

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

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

Veuillez consulter les descriptions des différents types de déclarations d'utilisation pour savoir comment les ajouter à votre projet.

Remarque : depuis Qt 6.8.1, l'autorisation ACCESS_FINE_LOCATION n'est plus demandée si le niveau d'API est >= 31. Cela peut limiter certains résultats de recherche Bluetooth. Les utilisateurs ayant 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 » ne comporte pas l'attribut « android:usesPermissionFlags="neverForLocation" ». Pour configurer et personnaliser les autorisations dans le manifeste de l'application, consultez ce guide.

Voir également QPermission, QCoreApplication::requestPermission(), QCoreApplication::checkPermission() et Autorisations d’application.

Documentation sur les types de membres

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

Cette énumération sert à contrôler les modes de communication Bluetooth autorisés.

ConstanteValeurDescription
QBluetoothPermission::Access0x01Autorise cet appareil à accéder à d'autres appareils Bluetooth. Cela inclut la recherche d'appareils à proximité et la connexion à ceux-ci.
QBluetoothPermission::Advertise0x02Autoriser d'autres appareils Bluetooth à détecter 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 Apple, quel que soit le mode sélectionné, l'accès Bluetooth est total.

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

Le type `CommunicationModes` est une définition de type (`typedef`) pour ` QFlags<CommunicationMode>`. Il stocke une combinaison (ou) 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 également setCommunicationModes().

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

Définit les modes de communication Bluetooth autorisés sur « modes ».

Remarque : une instance de ` CommunicationModes ` construite par défaut n'a aucun sens ; par conséquent, toute tentative de définition d'un tel mode déclenchera une exception ` qWarning() ` et le système reviendra au mode ` Default `.

Cette fonction a été introduite dans Qt 6.6.

Voir également 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.