首页 编程 软件学院 查看内容

iOS多点连接的使用、协议逆向、安全性

2014-11-17 11:28 813 0

摘要: 参考资源WWDC-2013-Session-708BlackHat-US-2014-“It Just (Net)works”Understanding Multipeer Connectivity F...
关键词: nbsp 设备 多点 Session advertiser 蓝牙 数据 MCSession MCPeerID 能力

参考资源WWDC-2013-Session-708BlackHat-US-2014-“It Just (Net)works”Understanding Multipeer Connectivity Framework in iOS 7 - Part 1 & 2MCDemo.zip: https://dl.dropboxusercontent.com/u/2857188/MCDemo.zip什么是多点连接?多点连接简单说就是将设备两两进行连接,从而组成一个网络,见下图:多点连接可以基于如下两种通道建立:    即:蓝牙与WiFi,且“只具有蓝牙的设备”可以与“只具有WiF的设备”通信,这一切都是透明的,开发者根本不需要关心:个人感觉它的能力还是比较强大的。既然能力这么强大,它可以用来做什么呢?MC只是提供了一种数据通道,具体用途还是要看业务、看大家的想象力,下面列几个比较常见的用途:传文件聊天室一台设备作为数据采集外设(比如:摄像头),将实时数据导到另一台设备上网络数据转发...多点连接 API 的使用SDK及版本信息MultipeerConnectivity.frameworkiOS 7.0OS X 10.10可以看到基于MC可以做到电脑与手机的通信。了解了其能力与SDK相关信息后,下面我们看看工作流程:使设备可被发现--->浏览设备,建立连接--->传输数据 。关于使用大家可以看看参考资源与 MCDemo,这里只是做一个代码导读。1、初始化 MCPeerID 及 MCSession,MCPeerID 用来唯一的标识设备,MCSession 是通信的基础:[objc] view plaincopy-(void)setupPeerAndSessionWithDisplayName:(NSString *)displayName{      _peerID = [[MCPeerID alloc] initWithDisplayName:displayName];            _session = [[MCSession alloc] initWithPeer:_peerID];      _session.delegate = self;  }  2、广播设备,使设备可以被发现:[objc] view plaincopy-(void)advertiseSelf:(BOOL)shouldAdvertise{      if (shouldAdvertise) {          _advertiser = [[MCAdvertiserAssistant alloc] initWithServiceType:@"chat-files"                                                             discoveryInfo:nil                                                                   session:_session];          [_advertiser start];      }      else{          [_advertiser stop];          _advertiser = nil;      }  }  3、浏览“局域网”中的设备,并建立连接:
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

最新评论

返回顶部