多台iPhone 使用bluetooth进行连接

目的:
了解iPhone的蓝牙开发基础框架

核心:
GAME KIT框架里面的GKPeerPickerController、GKSession,通过这两个类我们可以将两台iPhone使用蓝牙给连接起来并使相互之间可以发送/接收消息.
GKPeerPickerController:提供一套系统界面最终使多台设备之间的蓝牙连接起来,如果机器未开启蓝牙功能时,会提示是否要打开蓝牙功能.最终我们将通过一个回调函数
- (void)peerPickerController:(GKPeerPickerController *)picker didConnectPeer:(NSString *)peerID toSession:(GKSession *)session;
来得到与某个蓝牙连接成功事件.
GKSession:提供将多个蓝牙连接在一起之后的会话处理,如发送消息,接收消息,某个蓝牙设备断开等.
连接过程:
1.    GKPeerPickerController建立蓝牙连接界面
2.    peerPickerController(sessionForConnectionType) 回调获取GKSession的实体
3.    GKSession alloc建立一个自定义的GKSession(可以设置sessionID与type:s/c/peer)
4.    peerPickerController(didConnectPeer)一个设备连接成功的通知
5.    session(didChangeState=GKPeerStateConnected)一个设备加入到session的通知
发送与接收:
•    GKSession sendData通过这个函数来发送数据给指定的peer(可以是多个)
•    GKSessionDelegate receiveData通过这个回调函数来接收其它peer发送过来的数据

例子代码(缩减GKTank):
附件   BluetoothTest.zip (26 K) 下载次数:405 

你可能感兴趣的:(多台iPhone 使用bluetooth进行连接)