Ios面试复习--蓝牙

ios 中提控4个框架连接蓝牙

1.GameKit.framework 

只能用于ios设备间连接,多用于游戏类 ios7以后开始有接口过期

通过GKPeerPickerController 建立链接

得到连接到的PeerId 和 GKSession 对象

通过Session 向 PeerId 发送NSData

其中Mode 分为

GKSendDataReliable 可靠的

GKSendDataUnReliable 不可靠的 数据只会发送一次

不同于server 这是两个客户端之间的通讯,GKSession 对象需要设置成数据接收者

session setDataReceiveHander:(id) withContext:(void *);

同时在id 对象中实现接受到数据调用

receiveData:(NSData *)data fromPeer:(NSString *)peer isSession:(GKSession *)session context:(void *)context



2.MultipeerConnectivity.fremework 

用于ios间设备通讯,主要用于沙盒文件共享 在iOS7中,引入了一个全新的框架--Multipeer Connectivity(多点连接)。利用Multipeer Connectivity框架,即使在没有连接到WiFi(WLAN)或移动网络(xG)的情况下,距离较近的Apple设备(iMac / iPad / iPhone)之间可基于蓝牙和WiFi(P2P WiFi)技术进行发现和连接实现近场通信。

3.ExternalAccessory.framework 

可用于第三方蓝牙设备交互,但是蓝牙设备必须经过苹果MFi认证

4.CoreBluetooth.framework 

可用于第三方蓝牙设备交互,必须要支持蓝牙4.0

BLE中心模式流程

1.建立中心角色

2.扫描外设(Discover Peripheral)

3.连接外设(Connect Peripheral)

4.扫描外设中的服务和特征(Discover Services And Characteristics)

4.1 获取外设的services

4.2 获取外设的Characteristics,获取characteristics的值,,获取Characteristics的Descriptor和Descriptor的值

5.利用特征与外设做数据交互(Explore And Interact)

6.订阅Characteristic的通知

7.断开连接(Disconnect)

你可能感兴趣的:(Ios面试复习--蓝牙)