CoreBluetooth框架
这个介绍网上一搜一大堆,简单说下.
首先 CGBluetooth 是给BLE4写的 (新的低功耗蓝牙标准) iOS6以后使用, 现在估计还在跑iOS7或者以前的版本的手机都绝迹了.
写之前说明几个蓝牙的问题
1.蓝牙要是需要后台运行 需要在plist文件添加字段
App shares data using CoreBluetooth 和 App communicates using CoreBluetooth
2.很多demo用控制器加载的蓝牙 ,在控制器dealloc的时候 蓝牙也消失了. 程序运行期间蓝牙应该一直存在的
所以我是把蓝牙写成了单例,在需要使用蓝牙的时候调用方法即可.
3.现在模拟器不支持蓝牙 所以你需要真机测试 或者 你要在一个名字 lightBlue 的APP 模拟蓝牙外设.
应用蓝牙需要理解两个东西 蓝牙是作为:
中心设备(中央) 或者
外设(周边)
周边(Peripheral)是生成或者保存了数据的设备,中央(Central)是使用这些数据的设备。所有可用的iOS设备可以作为周边(Peripheral)也可以作为中央(Central),但不可以同时既是周边也是中央。
周边和中央这两个角色在CoreBluetooth框架中是用两个类来表示的,CBPeripheralManager这个类代表周边,CBCentralManager 这个类代表中央。
在中央这边,一个CBPeripheral 对象代表着相应的和中央连接着的周边;同样的,在周边这边,一个CBCentral 对象代表着相应的和周边连接着的中央。
你可以认为周边是一个广播数据的设备,他广播到外部世界说他这儿有数据,并且也说明了能提供的服务。另一边,中央开始扫描附近有没有服务,如果中央发现了想要的服务,然后中央就会请求连接周边,一旦连接建立成功,两个设备之间就开始交换传输数据了。
中央设备对应的类
CBCentralManager
外设对应的类
CBPeripheral
这两个类都是有自己的代理,蓝牙所有的功能 都是代理里面的方法完成的
使用这个框架 需要7个步骤