我正在尝试通过 iOS 7 中的 Multipeer 连接框架连接 2 个 iOS 7 设备。我可以使用蓝牙连接它们。在代码中我没有提到蓝牙之类的东西。
Multipeer Connectivity 框架支持使用基础设施 Wi-Fi 网络、对等 Wi-Fi 和蓝牙个人区域网络发现附近 iOS 设备提供的服务,并随后通过发送基于消息的数据、流数据与这些服务进行通信, 和资源(例如文件)。
如果,我关闭了其中一台设备的蓝牙,它会停止工作。
因为,蓝牙范围很慢,我需要大面积覆盖。那么,告诉我如何通过 Wi-Fi 或点对点 Wi-Fi 连接两台设备?
代码:.h 文件
@interface SessionManager : NSObject <MCSessionDelegate, MCAdvertiserAssistantDelegate, MCBrowserViewControllerDelegate>
// current peer
@property (nonatomic, readonly) MCPeerID *myPeer ;
// current session
@property (nonatomic, readonly) MCSession *session;
// current advertise
@property (nonatomic, readonly) MCAdvertiserAssistant *advertiser ;
// current browser
@property (nonatomic, readonly) MCBrowserViewController *browser ;
//To start advertising current device
- (void)start;
//To stop advertising current device
- (void)stop;
@end
.m 文件:
- (id)init
{
self = [super init];
if (self)
{
_myPeer = [[MCPeerID alloc] initWithDisplayName:[[UIDevice currentDevice] name]];
_session = [[MCSession alloc] initWithPeer:_myPeer securityIdentity:nil encryptionPreference:MCEncryptionNone];
_session.delegate = self;
_advertiser = [[MCAdvertiserAssistant alloc] initWithServiceType:@"Connect" discoveryInfo:nil session:_session];
_advertiser.delegate = self;
_browser = [[MCBrowserViewController alloc] initWithServiceType:@"Connect" session:_session];
_browser.delegate = self;
}
return self;
}
- (void)start
{
[_advertiser start];
}
任何帮助表示赞赏。