【问题标题】:discover another ios device without connecting to common network发现另一个 ios 设备而不连接到公共网络
【发布时间】:2016-05-23 19:43:33
【问题描述】:

我正在研究 Multipeer Connectivity Framework,试图找到一种连接附近设备的方法。更准确地说,我有两部 iPhone 可供使用。这个想法是在它们之间建立连接,以便能够传输小的音频流。一对一连接就够了,无需创建群组。

如果我执行以下任何操作,一切正常,设备可以相互发现:

  • 在两台设备上打开蓝牙
  • 将它们连接到同一个 wi-fi 网络
  • 在它们之间手动建立点对点 wi-fi 连接

但是是否有可能仅通过同时打开 wi-fi 来以某种方式发现附近的设备?理想情况下,他们会“看到”彼此并建立直接联系。

如果有人问过这样的问题,我很抱歉,但是很难用一句话来表达我试图达到的目标,因此很难找到任何相关信息。

【问题讨论】:

  • 您可以让他们在服务器上注册他们的位置,并使用该信息来识别彼此靠近的设备,但这将取决于可用的位置精度可能较低,例如室内

标签: ios iphone networking wifi-direct


【解决方案1】:

事实证明,仅使用 Bounjour API(NSNetService 级别)就非常容易:

let browser = NSNetServiceBrowser()
browser.includesPeerToPeer = true

最终从 Apple 获取了 this excellent example,迅速重写了其中的部分内容并根据我的需要进行了调整。

注意:我也尝试让它与 MultipeerConnectivity 框架一起工作,但它只是没有工作。尽管设备会成功发现彼此,但它们仍然无法建立连接。 而基于NSNetService 的解决方案工作得很好。

【讨论】:

    【解决方案2】:

    如果您只需要将一些音频或视频文件发送到另一台苹果设备,我认为您可以使用 airDrop 到此。

    【讨论】:

      猜你喜欢
      • 2013-10-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-11
      • 1970-01-01
      • 2023-04-04
      • 2020-07-15
      相关资源
      最近更新 更多