Mikołaj Kojdecki
Mikołaj Kojdecki
iOS 13 has introduced new API that allows one to register for connection events. https://developer.apple.com/documentation/corebluetooth/cbcentralmanager/3174844-registerforconnectionevents I've received a PR in MBA introducing it: https://github.com/Polidea/MultiPlatformBleAdapter/pull/56/files Since I'd like to get rid...
Plugin should probably support the new embedding - need more research. Example links for knowledge: https://flutter.dev/docs/development/packages-and-plugins/plugin-api-migration https://stackoverflow.com/questions/59988211/what-is-the-difference-between-flutter-android-embedding-v1-and-v2 This one seems most promising: https://medium.com/flutter/modern-flutter-plugin-development-4c3ee015cf5a
Methods returning Descriptors (`descriptorsForPeripheral/Service`, `readDescriptorForPeripheral/Service`) send only partial information about characteristic, ie. they're missing characteristic's properties, which results in errors due to type safety (null is not bool/String).
`write[Characteristic](withResponse: true)` does not return response, which should be passed as value from the native clients. Proposal: separate `write` into `writeWithResponse` and `writeWithoutResponse`, make `writeWithResponse` return `CharacteristicWithResponse` or `Uint8List.
https://github.com/Polidea/FlutterBleLib/pull/586#discussion_r610065825 Connectivity with 3 states: Connectivity.noInfo (or notAvailable?), Connectivity.notConnectable, Connectivity.Connectable
## 3.0.0-beta * **BREAKING** Migrate Android implementation to RxAndroidBle2 This might require the user to implement a global error handler https://github.com/ReactiveX/RxJava/wiki/What's-different-in-2.0#error-handling See more: https://github.com/Polidea/RxAndroidBle/wiki/FAQ:-UndeliverableException
Is the API clear and easy to understand?
Modify `.monitorCharacteristic()` methods to accept additional callback with an argument of type `Future`. This way the user of the library is able run logic depending on the notification being turned...
The issue now is that platform-specific arguments are only marked so in Dart docs. `peripheral.dart` ``` /// Connects to the peripheral. /// /// Optional [isAutoConnect] controls whether to directly connect...