【问题标题】:How to get the list of all announced bonjour services on all available domains?如何获取所有可用域上所有已宣布的 bonjour 服务的列表?
【发布时间】:2010-12-07 22:04:14
【问题描述】:

查找所有域不是问题,但我找不到在网络上查找任何服务的正确方法。

【问题讨论】:

    标签: iphone cocoa cocoa-touch macos bonjour


    【解决方案1】:

    据我所知,没有搜索所有可用服务的功能。原因可能是因为发布服务的应用程序可以定义自己的服务类型。

    如果您只寻找常见类型的服务(HTTP、打印机等),您可以轻松地创建一个循环来调用 -[instanceOfNSNetServiceBrowser searchForServicesOfType:inDomain:],并在您之前发现的所有域中使用您想要的所有类型。

    developer docs guide section on setting up a NSNetService 也可以提供帮助。

    【讨论】:

    • 是的,看来这是唯一的办法
    【解决方案2】:

    旧线程但有一种方法可以找到本地服务Discovering all advertised Bonjour service types。您将需要对结果进行一些操作以获取正确格式的类型。这适用于 Mac 和 iPhone,但如果我在 iPhone 上没有 Wifi 连接,则不会发现任何服务。

        NSNetServiceBrowser* domainBrowser = [[NSNetServiceBrowser alloc] init];
        domainBrowser.delegate = self;
        [domainBrowser searchForServicesOfType:@"_services._dns-sd._udp."
                                  inDomain:@"local."];
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-08-23
      • 1970-01-01
      • 2019-10-19
      • 2016-11-01
      • 1970-01-01
      相关资源
      最近更新 更多