- #721 Fix Windows connect/disconnect issues (fixes #423, #528, #536, #620)
- #719 Fixed crash with incorrect data in advertisement data on Android (fixes #567, #713)
- #708 Coding style fixes (fixes #693)
- #669 Return error codes to application
- #679 Querying adapter capabilities: extended advertisements & coded PHY
- #685 Fix build on Mac
- #688 IsConnectable
- #650 Add support for .NET 7
- #671 Adding propagating disconnect event if happening during communication (Android)
- #640 Fix problems with MAUI on Windows (fixes #356)
- #639 Fix warnings
- Add support for .NET 6 and MAUI, while keeping compatibility with Xamarin
- #614 Upgrade to .NET 6
- #638 GitHub Actions: update to .NET 7 (fixes #622, #626, #630)
- #527 Updated logger to support MVVMCross 8
- #600 Don't use same event handler for notifications as for read
- #605 UWP: update target platform version and allow extended advertisements
- #607 Added Scan Match Mode to Android
- #611 updated UWP plugin to support mvvmcross 8
- Merged fixes from 2.1.3
- #594 Added null-check to StartScanningForDevicesNativeAsync
- #596 Added null-checks
- #598 Bump Microsoft.Toolkit.Uwp.Connectivity to version 6.1.1 and .NETCore to 6.2.13
- #599 Fix for Acr.UserDialogs bait library problem
- #376 Android: Main thread queue experimental
- #336 Get service by GUID
- #381 Merged PR
- Merged fixes from 2.1.1
- UWP support pre-release
- Feature: additional scan filtering on Android, for manufacturer data, service data, device adress or device name (fixes #515)
- Adding unacknowledged writes to iOS (fixes #473)
- Add GetKnownDevicesByIds methods to get paired devices without the need of connecting to them
- Added cancellation token support in Characteristic.StartUpdatesAsync and StopUpdatesAsync
- Fix Android autoConnect flag
- Update sample client to Android 12 (fixes #568)
- Correctly close a gatt when a connection attempt is cancelled (fixes #484)
- Use NSBluetoothAlwaysUsageDescription in iOS and macOS samples (fixes #455, #498)
- Android: enable BT5 advertising extensions (fixes #495)
- Fixed cake build and updated build instructions (fixes #492)
- Added locking to DeviceBase.KnownServices (fixes #406)
- Updated Mac project to output the same filename as the other platforms (fixes #430, #491)
- Added iOS/Mac support for 32-bit and 16-bit Service UUIDs (fixes #445)
- [iOS] #373, #377 Fixed trace output that caused NRE.
- Use IReadOnlyLists for Services/Characteristics/Descriptors and concurrent collections for DiscoveredDevices/ConnectedDevices Should prevent crashes like: #320
- #54 macOS support
- Fix #367
- .NETStandard 2.0
- Merge PR #365 (NRE), #358, #359, #341, #314, #332, #331, #329, #307
- Update to package references/ update sample apps/ update libraries
- .NETStandard 1.0 support
- Merge PR #298, #289, #290, #263
- Stable release including all the 1.3.0-beta.x previous releases.
- Merge pull request #229 and #224 which fixed #227 set descriptor for android characteristic stop notify.
- Merge pull request #200. Possibility to change ConnectionPriority/ ConnectionInterval for Android
- #198 Android. Clear cached services, characteristics etc on signal loss
- Merge PR #195 Request MTU
- GATT callback refactoring, one GattCallback instance per device instead of a global one
- #183: Android fixed UpdateRssiAsync
- #136: Added support for scan modes
- Merge PR #157 iOS add support for NSString descriptor values
- Merge PR #148 Added a boolean (forceBleTransport) to force the use of 'transport' parameter to BLE in connectGatt() method in Android
- Breaking changes: ConnectDeviceAsync optional parameters are now encapsulated in a ConnectParameter class
- #150 iOS: No disconnect when the connect CancelationToken is cancelled after a successful connect.
- #122 Android: Introduced a extra connectivity state to distinguish system connected device from app connected devices. System connected devices can't be used by the app because we have no gatt instance so we should allow to connect them via the adapter even though the ProfileState is -Connected-
- #121 #126 hardened characteristic discovery error handling for iOS
- #118 fixed crash on read in empty value on iOS
- #90: API change, added parent reference for IDescriptor to ICharacteristic to IService to IDevice
- #109, #111 merge PR: iOS parse TxPower, ServiceData
- #97 Fixe iOS GetSystemConnectedDevices implementation. FYI method is now called GetSystemConnectedOrPairedDevices
- #98 and #96 Merged GetSystemConnectedDevices and GetSystemPairedDevice into single method. iOS has no equivalent method for this so it makes more sense like this.
- #94 iOS: Quickfix, change to GetDescriptorsAsync in order to wait for callback
- #94 Android: Quickfix for descriptor read async, callback not invoked
- #82 Enable setting PeripheralScanningOptions for ScanForPeripherals on iOS
- #93 Fixed iOS crash when ble is off and ConnectingToKnownDeviceAsync. Wait for state & proper use of cancellation token.
- #94 Implementation of descriptor Write/Read for iOS and Android.
- #95 Async for start/stop notifications so that the descriptor write callback is invoked
- #78 BluetoothStateChangedArgs contain the old state and the new state
- #81 iOS: Removed code smell which caused crash. Temporarily removed UpdateName subscription.
- Android <=4.4: fixed gatt callback to correctly detect gatt error when connecting to known device and not in range
- #86: GetSystemConnectedDevices, beta implementation, in order to use the device in the app call ConnectAsync
- #73: fixed crash when calling connecttoknwondevice without cancellation token
- improvements on xml documentation
- #62 Characteristic write type can be specified by the user
- fixed #69, ConnectAsync throws NullReferenceException if device is null
With this release we deliver a streamlined async API, additional functionality, xamarin vanilla plugin, sample app, better documentation.
- added indicate support for notifications
- fixed #47, clear cached services on disconnect
- IDevice is IDisposable now and disconnects the device on disposal
- fixed vanilla plugin error
- refactored/stabilized API
- sample app
- xamarin vanilla plugin in addition to MvvmCross plugin