iOS体系中统共提供了4个框架用于实现蓝牙毗连,分别如下:
1.GameKit.framework(用法简朴)只能用于iOS装备之间的同个应用内毗连,多用于游戏(如:棋牌类),从iOS7开始逾期2.MultipeerConnectivity.framework(取代GameKit.framework)只能用于iOS装备之间的毗连,从iOS7开始引入,重要用于非联网状态下,通过wifi大概蓝牙举行文件共享(仅限于沙盒的文件),多用于附近无网谈天3.ExternalAccessory.framework(MFi)可用于第三方蓝牙装备交互,但是蓝牙装备必须颠末苹果MFi认证4.CoreBluetooth.framework(常用 Apple推行蓝牙的焦点)可用于第三方蓝牙装备交互,必须要支持蓝牙4.0。硬件至少是4s,体系至少是iOS6。蓝牙4.0以低功耗著称,一样平常也叫BLE(Bluetooth Low Energy)关联利用的框架有HealthKit、HomeKit、wathOS、iBeacon。现在厂商重要利用蓝牙做自家智能硬件产物,如跑步机、蓝牙音箱、蓝牙车锁等。Ble4传输上限是20字节 所以大数据传输会涉及到拆包、拼包、校验等。
蓝牙毗连流程
1.创建装备管理者2.扫描装备3.毗连装备4.扫描装备的服务5.扫描装备中的特性6.订阅或读取装备特性值7.获取装备中的数据或将数据写入装备CenterManager 扫描链接外设乐成后 启动一个Peripheral外设管理对象 负责外设数据的操纵处理处罚
1.启动一个Peripheral外设管理对象 负责装备数据的操纵处理处罚2.扫描装备中的服务和特性(Discover Services And Characteristics)3.获取装备的services (根本服务(电池信息和装备信息)、硬件自定服务)4.Discover指定Service下的特性 获取的Characteristics,5.通过指定特性( Characteristics)订阅(Notiy)/读取(Read)/写入(Write) 等操纵6.获取Characteristics的Descriptor和Descriptor的值Characteristics是蓝牙数据传输操纵的做小单元。蓝牙通讯里的服务和特性是指每个装备都会有1个或多个服务,每个服务里都会有1个或多个特性。而特性就是详细的键值对,提供数据的地方,每个特性属性分为:读、写、关照等等。
下一篇会讲代码详细的实现。 |