RxBluetoothKit 6.0.0

RxBluetoothKit 6.0.0

测试测试
Lang语言 SwiftSwift
许可证 Apache-2.0
发布最新发布2020年9月
SPM支持 SPM

PolideaCierpliwyMichał Laskowski[monikamsc]Michał LaskowskiDariusz Seweryn 维护。



  • 作者:
  • Przemysław Lenart,Kacper Harasim,Michał Laskowski,Paweł Janeczek 和 Bartosz Stelmaszuk

RxBluetoothKit library logo

CI Status Platform Carthage Compatible

RxBluetoothKit 是一个改进与 BLE 设备交互的蓝牙库。它由 RxSwift 和 CoreBluetooth 支持,并提供中央和外围模式下的良好 API,使得代码更容易阅读、更可靠且易于维护。

以下是您可以使用 RxBluetoothKit 做的示例:

manager.scanForPeripherals(withServices: [serviceId])
    .take(1)
    .flatMap { $0.peripheral.establishConnection() }
    .flatMap { $0.discoverServices([serviceId]) }
    .flatMap { Observable.from($0) }
    .flatMap { $0.discoverCharacteristics([characteristicId]) }
    .flatMap { Observable.from($0) }
    .flatMap { $0.readValue() }
    .subscribe(onNext: { print("Value: \($0.value)") })

只需9行代码即可开始扫描、连接到外围设备、发现服务和特征,并读取特征值!

中央模式功能

外围模式功能

  • 观察管理状态
  • 广告
  • 观察读写操作
  • 观察订阅
  • 发布 L2CAP 通道
  • 还有很多其他功能!

近期更改

6.0.0

  • 将iOS的部署目标提高至9.0,将macos的部署目标提高至10.13(#379,#380)
  • 在从属设备上添加了对ancsAuthorized属性的监控支持。(#370)
  • 在示例项目中添加了Info.plist的蓝牙使用描述。(#369)
  • 对BluetoothState方法进行了初始状态改进及微小修复。(#371)
  • 修复了SPM支持的相关问题。(#358,#368)
  • 已将RxSwift的版本更新至5.1。(#376)
  • 已更新项目配置以减少在TravisCI上的构建时间。(#376)
  • 更新了脚本,以修复生成模拟时的相关问题。(#378)

所有之前的更改

想要从4.x迁移到5.x?请查阅指南此处

安装

CocoaPods

CocoaPods 是 Cocoa 项目的一个依赖管理器。要使用 CocoaPods 将 RxBluetoothKit 集成到您的 Xcode 项目中,请在您的 Podfile 中指定它。

pod 'RxBluetoothKit'

然后,运行以下命令:$ pod install

Carthage

Carthage 是一个去中心化的依赖管理器,它构建您的依赖并提供二进制框架。要使用 Carthage 将 RxBluetoothKit 集成到您的 Xcode 项目中,请在您的 Cartfile 中指定它。

github "Polidea/RxBluetoothKit"

然后,运行 carthage update 来构建框架,并将 RxBluetoothKit.framework 拖到您的 Xcode 项目中。

Swift Package Manager

库的版本 >= 4.0 集成了 Swift Package Manager。为了做到这一点,请将我们的项目指定为 Package.swift 文件中的一个依赖项。

开始使用

检查我们的Wiki了解几乎所有库功能的指南。

文档与支持

请关注Polidea的博客以获取所有新闻和更新!

联系我们

了解更多关于Polidea的BLE服务的信息

要求

  • iOS 9.0+
  • OSX 10.13+
  • watchOS 4.0+
  • tvOS 11.0+
  • Xcode 11.4+

Swift版本

  • 3.0版本支持Swift 3.0和3.1
  • 5.0版本支持Swift 3.2和4.0
  • 5.1.2版本支持Swift 4.1
  • 5.2版本支持Swift 5.0和4.2