[英]Set the maximum peers in MCSession
我正在使用MultipeerConnectivity框架在設備之間發送文件。 我了解到,默認情況下,這個框架最多可以連接8個設備,所以在我的情況下我想將它減少到只有2個設備(在這種情況下是我和另一個人)
在文檔中他說我們可以使用常量:
kMCSessionMaximumNumberOfPeers和kMCSessionMinimumNumberOfPeers
下面是配置MCSession的代碼:
mySession = [[MCSession alloc] initWithPeer:self.myPeerID];
mySession.delegate = self;
現在,我如何在代碼中使用常量來定義maximumPeers和minimumPeers?
這些常數是信息性的。 如果要限制連接的對等體的數量,則需要在對等體連接/斷開connectedPeers
時檢查MCSession
實例的connectedPeers
屬性的count
。 然后,您可以根據需要打開/關閉瀏覽/廣告。
- (void)session:(MCSession *)session
peer:(MCPeerID *)peerID
didChangeState:(MCSessionState)state {
NSInteger sessionCount = [session.connectedPeers count];
if (sessionCount==2){
//Stop browsing and/or advertising
}
else {
//Based on your own rules/requirements, if the session count
//has dropped below 2 you can start browsing and/or advertising
}
}
您可能還需要在MCNearbyServiceBrowser
和MCNearbyServiceAdvertiser
委托方法中添加檢查,以確保在MCPeerID
連接狀態更改時不會同時邀請/接受對等方。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.