
[ad_1]
Implémentation de base de Flutter pour Bluetooth classique (uniquement RFCOMM pour l’instant).
Fonctionnalités
Le premier objectif de ce projet, lancé par @edufolly, était de créer une interface pour le protocole de port série (adaptateur HC-05). Maintenant, le plugin propose :
-
Surveillance de l’état de l’adaptateur,
-
Allumer et éteindre l’adaptateur,
-
Paramètres d’ouverture,
-
Découverte d’appareils (et demande de découvrabilité),
-
Répertorier les appareils liés et en associer de nouveaux,
-
Connexion à plusieurs appareils en même temps,
-
Envoi et réception de données (connexions multiples).
Le plug-in (pour l’instant) utilise le profil du port série pour déplacer les données via RFCOMM. Assurez-vous donc que le protocole de découverte de service est en cours d’exécution et pointe vers le canal SP/RFCOMM de l’appareil. Il pourrait y avoir max jusqu’à 7 connexions Bluetooth.
Pour l’instant, il n’y a que le support Android.
Commencer
En fonction, dépendemment
# Add dependency to `pubspec.yaml` of your project.
dependencies:
# ...
flutter_bluetooth_serial: ^0.3.2
Installation
# With pub manager
pub get
# or with Flutter
flutter pub get
Importation
import 'package:flutter_bluetooth_serial/flutter_bluetooth_serial.dart';
Usage
Vous devriez regarder le code Dart de la bibliothèque (fonctions principalement documentées) ou les exemples de code.
// Some simplest connection :F
try {
BluetoothConnection connection = await BluetoothConnection.toAddress(address);
print('Connected to the device');
connection.input.listen((Uint8List data) {
print('Data incoming: ${ascii.decode(data)}');
connection.output.add(data); // Sending data
if (ascii.decode(data).contains('!')) {
connection.finish(); // Closing connection
print('Disconnecting by local host');
}
}).onDone(() {
print('Disconnected by remote request');
});
}
catch (exception) {
print('Cannot connect, exception occured');
}
Remarque : Des travaux sont en cours pour rendre la communication plus aisée que les opérations sur les flux d’octets. Voir #41 pour une discussion sur le sujet.
Exemples
Vérifier exemple d’application avec des connexions avec les interfaces Bluetooth Arduino HC-05 et Raspberry Pi (RFCOMM).
Écran principal et options | Découverte et connexion | Chat simple avec le serveur | Connexion en arrière-plan |
---|---|---|---|
![]() |
![]() |
![]() |
![]() |
Liste de choses à faire
- Ajoutez quelques utilitaires pour une gestion plus facile
BluetoothConnection
(voir débat #41), - Autoriser la spécification de méthode/protocole/UUID de connexion,
- Mode écoute/serveur,
- Reconnaître et afficher
BluetoothClass
d’appareil, - Peut-être l’intégration avec
flutter_blue
un jour ?
Vous voudrez peut-être aussi vérifier jalons.
Crédits
Après la version 0.3.0, nous avons beaucoup de collaborateurs. Si vous souhaitez être crédité, merci de m’envoyer un email.
Merci pour tout le soutien !
GitHub
Voir Github
[ad_2]