4

有没有办法创建一个UITableView住房中找到的相同信息MCBrowserViewController?我当前的代码只允许推送与我的应用程序设计不同的标准视图:

self.browserVC = [[MCBrowserViewController alloc] initWithServiceType:@"chat" session:self.mySession];
[self presentViewController:self.browserVC animated:YES completion:nil];

有任何想法吗?提前致谢!

4

3 回答 3

11
  1. 将您的视图控制器设置为MCNearbyServiceBrowserMCSession(即<MCNearbyServiceBrowserDelegate, MCSessionDelegate>)的委托
  2. MCNearbyServiceBrowser为您的(and MCSession)创建一个属性
  3. viewDidLoad您的视图控制器(或任何适合您的模式的触发器)中:

    _myPeerID = [[MCPeerID alloc] initWithDisplayName:[UIDevice currentDevice].name];
    _mySession = [[MCSession alloc] initWithPeer:_myPeerID];
    [_mySession setDelegate:self];
    _browser = [[MCNearbyServiceBrowser alloc]initWithPeer:_myPeerID serviceType:@"connectme"];
    [_browser setDelegate:self];
    [_browser startBrowsingForPeers];
    
  4. 实现- (void)browser:(MCNearbyServiceBrowser *)browser foundPeer:(MCPeerID *)peerID withDiscoveryInfo:(NSDictionary *)info方法如下:

    1. 将每个找到的对等点添加到您的数据源的数组中UITableView。通常你会得到peerID.displayName.
    2. 打电话[tableView reloadData]
于 2013-11-11T04:13:43.197 回答
3

查看MCSessionP2P,这是一个演示应用程序,它说明了MCSession. SessionController符合MCSessionDelegateMCNearbyServiceBrowserDelegate并且MCNearbyServiceAdvertiserDelegate充当 的数据源UITableView。该应用程序通过 Wi-Fi 或蓝牙进行自我宣传,并以编程方式连接到可用的对等点,从而建立对等网络。

于 2014-01-06T21:06:23.333 回答
0

Yazid 的回答对我有用。下一步,连接到在startBrowsingForPeers使用过程中发现的对等点

_browser.invitePeer(peerID, toSession: _mySession, withContext: nil, timeout: 30.0)

(此处为 SWIFT 符号)

于 2016-03-01T21:41:10.213 回答