- Cherry pick some commits from https://github.com/i-mobility/RxBluetoothKit (no longer maintained)
- Updated RxSwift version to 6.5.0 with SPM
- Add compatibility with Xcode 15
- Increased deployment target for iOS to 9.0 and for osx to 10.13 (#379, #380)
- Added support for observing ancsAuthorized property on peripheral. (#370)
- Added Bluetooth usage description to Info.plist in Example project (#369)
- Added initial state improvement & a minor fix for BluetoothState methods. (#371)
- Fixed problems with SPM support (#358, #368)
- Updated RxSwift version to 5.1 (#376)
- Updated project configurations to decrease build time on TravisCI (#376)
- Updated scripts to fixed problems with generating mocks (#378)
- Always connect to retrieved peripherals first (#337)
- Addded a customisation point for injecting a logger (#341)
- Fixed L2CAP API to support OSX 10.14 (#345)
- Updated RxSwift to version 5.0 (#335)
- Added support for Xcode 10.2 and Swift 5 (#321)
- Fixed "API MISUSE" after canceling notification state when bluetooth is powered off (#319)
- Fixed problems when
discoverServices
doesn't emit any result (#309)
- Updated RxSwift library to version 4.3
- fix API MISUSE when calling stop scan on dispose (#283)
- add option to disable checking of canSendWriteWithoutReponse while writing (#282)
- Changed back deployment target from 10.0 to 8.0. (#275)
- Updated RxSwift to 4.2 with support for XCode 9.4 (#268)
- Fixed
PeripheralManager
not public (#264)
- Added support for
CBPeripheralManager
. ReadPeripheralManager
documentation for more info (#166) - Deprecated
RestoredState
andCentralManager.init(queue:options:onWillRestoreCentralManagerState:)
. From now on please use correspondingCentralManagerRestoredState
andCentralManager.init(queue:options:onWillRestoreCentralManagerState:)
- Changed error name from
BluetoothError.peripheralIsConnectingOrAlreadyConnected
toBluetoothError.peripheralIsAlreadyObservingConnection
- old error has been deprecated (#245) - To each method, that returns observable, added documentation with a list of errors that this observable can return (#225)
- Rewritten example app that is now using RxBluetoothKit 5.x (#240, #220)
- Added available annotation for
canSendWriteWithoutResponse
property (#253)
- Added method to observe notyfing state change for the characteristic (#229)
- Aligned the API for
establishConnection
with the rest of the implementation - Made restore state api public (#224)
- Enabled getting an
Observable<Peripheral>
from already connected peripheral provided by the system (#238) - Fixed writting without response on older systems (#241)
- Added queues for discovery requests (fixed #235)
- Added support for XCode 9.3 and swift 4.1
- Changed
BluetoothManager
toCentralManager
- Reimplemented connection and notification API's
- Added watchOS and tvOS targets
- Added support for L2CAP
- Rewritten unit tests
- Allow projects that depend on RxBluetoothKit to update RxSwift to 4.1.0 and newer.
- Add missing logs for CBPeripheral and CBCentralManager classes.
- Fixed implementation of scanning subscription queue.
- App updated to newest iOS & macOS SDK
- Swift 4 adoption
- Possible memory leaks removed
- Fix building on macOS with the newest SDK
listenedOnRestoredState
should not be missing events from delegate now in case of race condition- Fixed build issue caused by swiftlint
- Access from library objects to
CBCentralManager
andPeripheral
instances is now public - Fixed a bug regarding doing unnecessary operations when peripheral was disconnected
- Fixed building on Xcode 9 Beta 2
- Small changes to printing optionals, due to Swift warnings
- Added option to enable logging of CoreBluetooth delegate values used internally by RxBluetoothKit
- Make objectId fields public for Service, Characteristic and Descriptor classes.
- Updated podspec file to proper version.
- Added objectId property to missing
Service
,Characteristic
andDescriptor
objetcs.
- Added objectId property to
Peripheral
object needed by react-native library. Should not be necessary in 4.x version of the library.
- Support for multiple services/characteristics under the same UUID
- Updated RxSwift dependency version to 3.2.0
- Some small code cleanups
- Fixed SwiftLint & Xcode warnings
- Updated swift-version in
jazzy.yml
file to allow cocoadocs parsing
- Fixed bug when
options
dictionary was not being passed toBluetoothManager
when initializing it - Updated README.md to use
Observable.from
in correct way
- Updated RxSwift dependency version to 3.0.0
- Updated Nimble dependency version to 5.1
- Updated RxSwift dependency version to 3.0.0-rc.1
- Updated RxSwift dependency version to 3.0.0-beta.2
- Fixed support for Cocoapods
- Implemented compatibility for Swift 3.0. This includes adoption of Swift Design Guidelines and new Value Types in Cocoa.
- Implemented function
maximumWriteValueLength
onPeripheral
instance that is available from OSX 10.12 and iOS 9.0 - Couple of minor code cleanups in order to make source more concise and easier to read
- Implemented compatibility for Swift 2.3. This version is supposed to work with Xcode 7.3 and Xcode 8.
- Introduced
BluetoothState
which is same asCBCentralManagerState
andCBManagerState
and help us achieve compatibility with 8.0 and 10.0 CoreBluetooth SDKs. - Removed deprecated methods from earlier versions -
monitorState
andmonitorStateChange
fromBluetoothManager
- Removed method
rx_state
onPeripheral
instance. It didn't work well and you should userx_isConnected
instead. - Removed method
monitorPeripheralDisconnection
. You should userx_isConnected
instead
- Removed
platform
specifier from podpspec
- Bubbling of errors added to
monitorPeripheralDisconnection
method
- Fixed memory leak, that was visible while calling scan
- Fixed behavior of discoverServices method.
- Added monitoring of disconnection on Peripheral example to the Example app
listenOnRestoredState
method made public
- Added support for Core Bluetooth state restoration
- Fixed a bug regarding
rx_state
behavior
- New API in
BluetoothManager
:rx_state
to monitorCBCentralManager
state changes - New API in
Peripheral
:rx_state
to monitorCBPeripheral
state change andrx_isConntected
to monitor connection state changes monitorState()
andmonitorStateChange()
marked as deprecated- Added dependency for RxCocoa
- Fixed issues related to scan sharing
- Added OSX support. Official 1.0 release
- Fixed possible race condition in
setNotifyAndMonitor
function
- Documentation updated
- Use cases added to example app
- Added convenience methods to peripheral
- Added protocols that are giving user access to convenience API.
- Improved APIs of
Characteristic
andService
- Added convenience methods to
Peripheral
. Check more about it in README.
- Deleted jazzy.yaml in order to make cocoadocs work
- Initial release