What is it all about?
SweetBlue serves as the friendly middleman between your code and the chaos, offering a simple API that hides the details and lets you focus on what's most important to you: your app.
• Full-coverage API documentation • Sample applications • Java with zero API-level dependencies • Rich, queryable state tracking for simple UI integration • Automatic service discovery. • Built-in polling and caching for RSSI and characteristic reads with change tracking to simulate notifications. • Highly configurable scanning with continuous mode, min/max time limits, periodic bursts, advanced filtering, and more • Transactions for easily coordinating authentication handshakes, initialization, and firmware updates • Undiscovery based on last time seen • Clean leakage of underlying native stack objects in case of emergency • Internal priority job queue that ensures serialization of all operations • Optimal coordination of the BLE stack when connected to multiple devices • Detection, and correction of dozens of BLE failure conditions • Numerous manufacturer-specific workarounds • Transparent retries for transient failure conditions • Distills dozens of lines of boilerplate, booby-trapped, native API usages into single method calls • Transparently falls back to Bluetooth Classic for certain BLE failure conditions • On-the-fly configurable reconnection loops started automatically when random disconnects occur • One convenient method to completely unwind and reset the Bluetooth stack • Verbose logging, runtime analytics, and detailed warning and error reporting.