Skip to content

Latest commit

 

History

History
122 lines (100 loc) · 7.77 KB

CHANGELOG.md

File metadata and controls

122 lines (100 loc) · 7.77 KB

Change Log

Version 1.3.1

  • Fixed unsubscribing from operations before onComplete()/onError() causing the library to hang. (dariuszseweryn#218)

Version 1.3.0

  • Changed Behaviour of RxBleConnection - connection is no longer closed on individual operation errors. (dariuszseweryn#26)
  • Added partial support for API 21 BLE scan in a backwards compatible manner. (dariuszseweryn#16)
  • Added support for filtering by Manufacturer Data (dariuszseweryn#127)
  • Added RxBleClient State observing for determining what functionality of the library may work (dariuszseweryn#55)
  • Added ValueInterpreter for interpreting standardized (Bluetooth Specification) int/float/String values from byte[] (dariuszseweryn#199)
  • Added support for requesting connection priority on API 21+ (dariuszseweryn#111)

Version 1.2.4

Version 1.2.3

  • Fixed scan when filter with 32-bit UUID was specified (dariuszseweryn#207)
  • Fixed memory leak of scan operation (and potentially any other that would emit an infinite stream of events) (dariuszseweryn#194)
  • Lowered memory pressure when using functions that accept UUID.
  • Changed RxBleConnectionState from a class to an enum for convenience.
  • Minor optimisations to RxBleRadio queue processing time.
  • Updated RxJava to 1.3.0

Version 1.2.2

  • Fixed visibility of UUIDUtil. Deprecated it. Introduced AdvertisedServiceUUIDExtractor helper, thanks marciogranzotto! (dariuszseweryn#184)

Version 1.2.1

  • Added ByteArrayBatchObservable helper for splitting long byte arrays
  • Fixed behaviour in non-Bluetooth environments. (dariuszseweryn#158)
  • Fixed RxBleConnectionMock overwriting BluetoothCharacteristic value on setting notification. (dariuszseweryn#160)
  • Fixed default payload size of Long Write operation when non-standard MTU was negotiated (dariuszseweryn#161)
  • Added possibility to get the current MTU value of RxBleConnection (dariuszseweryn#166)
  • Fixed retrying of RxBleClient.scanBleDevices(UUID...), thanks BharathMG! (dariuszseweryn#174)
  • Fixed connection not being noticed as established due to a race condition (dariuszseweryn#178)
  • Fixed BleBluetoothGattCallbackTimeout macAddress being null on connection (dariuszseweryn#178)
  • Fixed disconnect operation behaviour in an edge case situation (dariuszseweryn#178)

Version 1.2.0

  • Added Proguard rules for the library. (dariuszseweryn#104)
  • Added support for MTU negotiation, thanks pregno!
  • Fixed connecting with autoConnect = true on Android 7.0.0+, thanks JIUgia!
  • Fixed notifications for characteristics with the same UUID
  • Adjusted scan location services check for various scenarios (dariuszseweryn#106)
  • Fixed occasional out-of-order emissions from notifications (dariuszseweryn#75)
  • Fixed stalled operations by adding timeouts (dariuszseweryn#118)
  • Added LocationServicesOkObservable helper for observing if scan can be successfully started
  • Added Jack compatibility (dariuszseweryn#123)
  • Added compatibility mode for notifications on characteristic that do not contain a Client Characteristic Config descriptor
  • Fixed logic of UUID filtering during scan
  • Added long write support (dariuszseweryn#68)
  • Fixed issue with a stalled library when write operations were too quick (dariuszseweryn#135)
  • Optimised logging
  • Added support for custom BluetoothGatt operations (dariuszseweryn#137)
  • Updated RxJava to 1.2.9
  • Added support for scanning on Android Wear
  • Internal refactoring introducing Dagger2 support

Version 1.1.0

  • Fixed issue that sometimes happened where RxBleRadioOperationConnect was not yet subscribed while running. (dariuszseweryn#94)
  • Fixed issue with descriptor writing using parent characteristic write type. (dariuszseweryn#93)
  • Added BleScanException.toString() for a more descriptive stacktrace.
  • Added a workaround for a bug while discovering services. (dariuszseweryn#86)
  • Added a timeout for discovering services. (dariuszseweryn#86)
  • Fixed calling BluetoothGatt.disconnect() on a correct thread. (dariuszseweryn#84)
  • Fixed library stuck if disconnection happened during operation execution. (dariuszseweryn#81)
  • Removed reflection call to BluetoothGatt.connect() on Android 7.0.0+. (dariuszseweryn#83)
  • Removed android.support.v4 dependency.
  • Added cancelling of connection establishing process.
  • Reduced method count.
  • Fixed RejectedExecutionException when processing BluetoothGattCallback. (dariuszseweryn#25) (dariuszseweryn#75)

Version 1.0.2

  • Added Mock RxAndroidBle to the repository
  • Added indications handling on RxBleConnection
  • Fixed scan operation concurrency issue (dariuszseweryn#17)
  • Exposed android.bluetooth.BluetoothDevice in RxBleDevice (dariuszseweryn#23)
  • Fixed stale RxBleRadio on RxBleOperation unhandled throw (dariuszseweryn#18)
  • Fixed possible BluetoothCharacteristic value overwrites with multiple writes (dariuszseweryn#27)
  • Updated RxJava (1.1.0 -> 1.1.7) and RxAndroid (1.1.0 -> 1.2.1) libraries dependency
  • Added interface methods for usage with BluetoothCharacteristic object (dariuszseweryn#38)
  • Fixed lost connection when BluetoothAdapter disabled before the connection established (dariuszseweryn#45)
  • Added RxBleClient.getBondedDevices() method, thanks fracturedpsyche! (dariuszseweryn#46)

Version 1.0.1

  • Fixed scan operation concurrency issue, thanks artem-zinnatullin! (dariuszseweryn#5)
  • Fixed location permission requirement check (Android >=6.0)

Version 1.0.0

  • Changed RxBleClient factory method name.
  • After this version the public API will be maintained to avoid conflicts.

Version 0.0.4

  • Removed duplicated API for connection state from RxBleConnection
  • Renamed API for connection state observation in RxBleDevice
  • Renamed API for notification setup, not it is RxBleConnection#setupNotification(UUID)
  • Added convenience method to check current connection state
  • Added ability to filter scan results with one service more easily
  • Reject establishConnection calls if connection is already established
  • Added adapter for sharing connections

Version 0.0.3

  • Added location permission for APIs >=23
  • Check if location permission is granted and location services are enabled on Android 6.0
  • Fixed error callback notifying about disconnects

Version 0.0.2

  • Bugfixes
  • Changed API for instantiation of the client
  • Added caches in sensitive places

Version 0.0.1

Initial release

  • Support for main bluetooth operations (discovery, connection, read, write, notifications)