iOS蓝牙Ble开发

最近做的项目主要是iphone与平常的一些设备进行蓝牙连接,通信等功能。所以整理了一下蓝牙方面的一些知识。

iOS蓝牙开发主要有种方式。

1 GameKit.framework   iOS7之前的蓝牙通讯框架,从iOS7开始过期,但是目前多数应用还是基于此框架。只能用于iOS设备之间,多用于游戏。

2 MultipeerConnectivity.framework  iOS7开始引入的新的蓝牙通讯开发框架,用于取代GameKit。也只能用于iOS设备间,主要用于共享文件。

3 CoreBluetooth.framework  功能强大的蓝牙开发框架,要求设备必须支持蓝牙4.0,可与其他第三方设备进行通信。

4 ExternalAccessory.framework 也可于第三方蓝牙设备交互,但是蓝牙设备必须经过MFI认证,需要有苹果的协议,这就有一定的局限性。

对比明显可以看到CoreBluetooth这个比较好用,并且功能强大,不再局限于iOS设备之间进行传输数据,你可以通过iOS设备向Android、Windows Phone以及其他安装有蓝牙4.0芯片的智能设备传输,因此也是目前智能家居、无线支付等热门智能设备所推崇的技术。我这里介绍一下这个的使用。


CoreBluetooth.framework

从iOS6开始苹果推出了此框架,它专门用于与BLE4.0设备通信,不仅限于iOS设备。

CoreBluetooth框架的核心其实是两个东西,peripheral和central, 可以理解成外设和中心。类似于C/S设计(客户端和服务端),外围设备可以理解为客户端,中央设备可以当作服务端。

外围设备和中央设备在CoreBluetooth中使用CBPeripheralManager和CBCentralManager表示。

CBPeripheralManager:外围设备通常用于发布服务、生成数据、保存数据。外围设备发布并广播服务,告诉周围的中央设备它的可用服务和特征。

CBCentralManager:中央设备使用外围设备的数据。中央设备扫描到外围设备后会就会试图建立连接,一旦连接成功就可以使用这些服务和特征。

外围设备和中央设备之间交互的桥梁是服务(CBService)和特征(CBCharacteristic),二者都有一个唯一的标识UUID(CBUUID类型)来唯一确定一个服务或者特征,每个服务可以拥有多个特征。



左侧表示中央设备

  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值