walure_android_blt 0.0.1
walure_android_blt: ^0.0.1 copied to clipboard
A bluetooth connector SDK for Flutter Android apps with POS printer support
0.0.1 #
Added #
- Initial release of walure_android_blt plugin
- Bluetooth device discovery and scanning functionality
- Device connection and disconnection management
- Real-time device stream for live updates
- Comprehensive printer command support for receipt printing
- Support for various printer formatting options (alignment, font size, bold, etc.)
- Barcode and QR code printing capabilities
- Automatic Bluetooth permission handling for Android API 21+
- Custom exception handling for Bluetooth operations
- Complete example application demonstrating plugin usage
- Integration with Android Bluetooth Classic (SPP) protocol
- Support for bonded device management
- Stream-based device discovery for real-time UI updates
- Comprehensive error handling with custom exception types
- Built-in test receipt printing functionality
Features #
- Device Management: Scan, connect, and disconnect from Bluetooth devices
- Receipt Printing: Full-featured receipt printing with text formatting, barcodes, and QR codes
- Permission Handling: Automatic Bluetooth permission management for different Android versions
- Error Recovery: Robust error handling with automatic retry mechanisms for data transmission
- Real-time Updates: Stream-based device discovery for live UI updates
- Printer Commands: Comprehensive set of ESC/POS printer commands for various formatting options
Technical Details #
- Minimum Android API level: 21 (Android 5.0)
- Uses Bluetooth Classic SPP (Serial Port Profile) for printer communication
- Implements proper Android lifecycle management
- Thread-safe operations with coroutines for data transmission
- UUID-based device connection for reliable communication
Dependencies #
- Flutter SDK: >=3.3.0
- Dart SDK: >=3.1.5
- Android compileSdkVersion: 34
- Plugin platform interface: ^2.0.2
- Internationalization support: ^0.19.0
Example Usage #
// Initialize Bluetooth
await WalureAndroidBlt.instance.initBluetooth();
// Scan for devices
await WalureAndroidBlt.instance.scanBluetooth();
// Connect to device
final device = await WalureAndroidBlt.instance.connectDevice(selectedDevice);
// Print receipt
await WalureAndroidBlt.instance.printTestData();
Known Limitations #
- Android-only implementation (iOS support not included)
- Focuses on Bluetooth Classic devices (BLE not supported)
- Requires location permissions for device discovery on Android 6.0+
- Designed primarily for POS printer applications
For more information, see the README file and the example app directory.