【问题标题】:discover services using subtypes in jmdns使用 jmdns 中的子类型发现服务
【发布时间】:2015-02-11 16:50:44
【问题描述】:

我已经在我的 linux 电脑上使用 mdnsreponder(applebonjour) 注册了我的服务子类型
.我正在尝试在我的 Galaxy 手机上使用 jmdns(这里有 jmdns.jar 文件)浏览服务。

我使用以下命令注册了服务

$dns-sd -R SMARTCAM _smartplace._tcp.,**_wcam** local 80  "u=test" 

当我浏览 jmdns 的服务类型列表中没有子类型时,我得到了正确的响应。 即

ServiceInfo[] https = jmdns.list("_smartplace._tcp.local.");

但如果我尝试使用以下选项,它无法列出任何内容 -> 响应为空 ServiceInfo[] https = jmdns.list("_wcam._sub._smartplace._tcp.local.");

$avahi-browse   _wcam._sub._smartplace._tcp.

它适用于 avahi 浏览器..

现在有人可以帮助我如何使用 jmdns 浏览子类型。

【问题讨论】:

  • 嗨,我尝试了 jmdns listby 子类型,但仍然无法打印子类型 .. Map ressub = jmdns.listBySubtype("_wcam._sub._smartplace._tcp.local. ");但我的返回字符串仍然是空的..我是否遵循列出子类型的正确方法..?
  • 嗯,我认为服务的名称保持不变,子类型可能存储在 serviceInfo 对象中的某个位置,您必须手动获取它。我只是建议,暂时无法检查我在说什么,抱歉。

标签: android zeroconf jmdns


【解决方案1】:

JmDNS 目前不支持此功能。这有一个未解决的错误 (http://sourceforge.net/p/jmdns/bugs/91/)。

您将需要浏览主要类型(无子类型),然后自己进行过滤(例如,您可以使用自定义键添加 TXT 记录,然后在发现的每个服务上检查该键)。

【讨论】:

    猜你喜欢
    • 2011-12-31
    • 1970-01-01
    • 1970-01-01
    • 2011-10-19
    • 2011-02-16
    • 1970-01-01
    • 1970-01-01
    • 2011-01-29
    • 1970-01-01
    相关资源
    最近更新 更多