BLE Disconnect
Résumé
- Nom interne :
Ble_disconnect - Catégorie : Bluetooth
- Objectif : Fermer une connexion GATT BLE précédemment ouverte, pour un appareil spécifique ou pour tous les appareils connectés à la fois.
- Type de tâche : Normale
Compatibilité
-
Version minimale AndroMate :
1.1.0 -
Version maximale AndroMate :
1.1.0 -
Android minimum :
Android 13 (API 33) -
Android maximum testé :
Android 16 (API 36) -
Constructeurs supportés :
- ✅ Tous les constructeurs
-
Permissions requises :
BLUETOOTH_SCANBLUETOOTH_CONNECT- Localisation de l'appareil activée (exigence Android pour les opérations BLE)
Description détaillée
La tâche BLE Disconnect ferme une connexion GATT précédemment ouverte par Ble_connect. Elle peut cibler un appareil spécifique via mac_ble, ou tous les appareils BLE actuellement connectés via disconnect_all.
Si l'appareil cible est déjà déconnecté (ou n'a jamais été connecté), la tâche ne fait rien et signale qu'il est déjà déconnecté.
Paramètres d'entrée
| Paramètre | Type | Obligatoire | Valeurs possibles | Compatibilité Android | Compatibilité AndroMate | Défaut |
|---|---|---|---|---|---|---|
mac_ble |
String | Non¹ | Une adresse MAC Bluetooth valide, ex. AA:BB:CC:DD:EE:FF |
Android 13 (API 33) → Android 16 (API 36) | 1.1.0 → 1.1.0 | "" |
disconnect_all |
Boolean | Non | true / false |
Android 13 (API 33) → Android 16 (API 36) | 1.1.0 → 1.1.0 | false |
¹ mac_ble est requis uniquement quand disconnect_all vaut false (le défaut) — il est ignoré quand disconnect_all vaut true.
Paramètres de sortie
La tâche BLE Disconnect ne produit aucune sortie.
Exceptions
| Code | Nom de l'exception | Description |
|---|---|---|
BLE-TASK-001 |
Bluetooth désactivé | Le Bluetooth est désactivé sur l'appareil. |
BLE-TASK-002 |
Bluetooth non supporté | Cet appareil ne supporte pas le Bluetooth. |
ERROR-001 |
Permission non accordée | BLUETOOTH_SCAN ou BLUETOOTH_CONNECT n'a pas été accordée. |
GPS-ERROR-003 |
Localisation désactivée | La localisation de l'appareil est désactivée — requise par Android pour le BLE. |
Diagramme d'exécution
flowchart TD
Start([▶ Ble_disconnect]) --> Prereq{BLE activé, supporté,\npermissions, localisation OK ?}
Prereq -->|Non| E1[❌ BLE-TASK-001/002\nERROR-001/GPS-ERROR-003]
Prereq -->|Oui| Mode{disconnect_all ?}
Mode -->|true| All[🔌 Déconnecter tous les appareils enregistrés]
Mode -->|false| One{mac_ble\nenregistré ?}
One -->|Oui| Single[🔌 Déconnecter mac_ble]
One -->|Non| Info[ℹ️ Log : déjà déconnecté]
All --> Success([✅ VoidResult])
Single --> Success
Info --> Success
E1 --> Error([❌ Exception])
style Start fill:#e3f2fd
style Success fill:#c8e6c9
style Error fill:#ffcdd2
Comment ça fonctionne :
- Vérifications préalables : Bluetooth activé/supporté, permissions accordées, localisation activée.
disconnect_all: true: déconnecte tous les appareils BLE actuellement enregistrés.disconnect_all: false(par défaut) : déconnecte uniquementmac_ble, s'il est enregistré — sinon journalise qu'il est déjà déconnecté, sans erreur.
Détails des paramètres d'entrée
1. Paramètre d'entrée : mac_ble
L'adresse MAC Bluetooth à déconnecter. Requis sauf si disconnect_all vaut true.
Exemple
2. Paramètre d'entrée : disconnect_all
Quand true, déconnecte tous les appareils BLE actuellement connectés et ignore mac_ble.
Exemple
Détails
- Optionnel — vaut
falsepar défaut.