- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
Bonjour 提供了一个很好的方法:DNSSSD.browse("_killerapp._tcp", this);
。作为此方法的第一个参数,我给出了可能在网络中可用的服务类型,作为第二个参数,我给出了“回调对象”。所考虑的方法“浏览”指定类型的服务(第一个参数)。
在浏览过程中,它可以“找到”然后“丢失”一项服务。如果找到服务(丢失),bonjour 调用回调对象的 serviceFound(serviceLost) 方法。使用找到的服务的一些参数调用 serviceFound。更多详情:
serviceFound(DNSSDService browser, int flags, int ifIndex, String serviceName, String regType, String domain)
但是要获取服务的IP地址和端口我们需要做额外的操作(人们称之为“解析服务”)。这逻辑对我来说有点奇怪。为什么 serviceFound 不能给出这些信息?我的意思是为什么 Bonjour 无法在找到服务时自动解析服务。
无论如何,我只是接受给定的逻辑并尝试使用它。从 serviceFound
我调用 DNSSSD.resolve(0, ifIndex, serviceName, regType, domain, this)
。
和以前一样,我给 resolve
(最后一个参数)一个回调对象。不幸的是,我需要使用不同的类来为 browse
和 resolve
提供回调对象。原因是 browse
和 resolve
可以调用回调对象的 operationFailed
方法,如果我使用同一个类的回调对象我不知道哪个方法正在调用 operationFailed
(browse
或 resolve
)。
因此,我创建了一个单独的类来实例化 resolve
方法的回调对象。在这个类中,我有一个名为 serviceResolved
的方法,它由 Bonjour 使用解析服务的 IP 地址和端口调用:
serviceResolved(DNSSDService resolver, int flags, int ifIndex, String fullname, String hostname, int port, TXTRecord txtRecord)
我认为IP地址和端口应该是执行浏览的对象的字段。因此,在 serviceResolved
中,我有 IP 和端口,我想将这些值设置为 browse
服务实例的相应字段。但是我该怎么做呢?此实例未作为 serviceResolved
方法的参数提供。所以,它是不可见的!
此外,我看到 serviceResolved 和 serviceFound 将 DNSSSDService 解析器
作为第一个参数。有人知道这是什么吗?也许这个对象可以用来设置服务的参数?我知道 browse
会返回这种类型的对象。
最佳答案
不是真正的答案,但想指出的是,除了 Bonjour 库,您可能还想尝试 JmDNS,这是一个纯 Java 开源模块。
关于java - 与 Bonjour 沟通的最佳方式是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2469622/
之前结合笔者做的一个在线教育类平台对于平台前期市场推广做了一个结构性的梳理,为什么要以这个为例,一是确实是目前在做的项目,离现实更近一 些。另外就是这个产品还没有推向市场,所以也就不存在广告的嫌疑。
我的主窗口上有一个 UIWebView。我可以通过我的第二个 View Controller 来控制它吗?如果可以的话你能给我举个例子吗? 最佳答案 是的,你可以。 “如何”是一个基本的 Cocoa/
首先,关于这个主题有很多问题和答案,但是我的问题是关于我的具体案例的最佳做法是什么。 为了使问题简短,我的应用程序将具有: 在用户最小化/结束应用后继续运行的服务。 服务每 30 分钟运行一次任务以查
最好的做法是通过 NSNotificationCenter 传达事件或类似的东西(如成功登录),还是有任何其他您可以推荐的控制机制? 最佳答案 至于我,我不喜欢使用 NSNotificationCen
背景:我有一个 JPanel(PanelCarga 扩展 JPanel),它显示与我希望在程序中出于不同目的打开的文件(n 个 DatosArchivo 面板)一样多的子 JPanel(DatosAr
关闭。这个问题需要details or clarity .它目前不接受答案。 想改进这个问题吗? 通过 editing this post 添加细节并澄清问题. 关闭 7 年前。 Improve t
我正在尝试从 BES 获取设备及其软件的列表。我的第一个想法是直接连接到数据库并直接查询它,但据我所知,在“托管”黑莓环境中我无法访问数据库。我可以看到的另一个选项是 Blackberry Admin
我目前正在学习 Qt 以进行一些跨平台开发,并且我正在尝试使用 QML 来做所有事情。我知道有很多方法可以使用 C++ 解决我的问题,但我想忠于模型并使用 QML。 这里是:如果我使用加载程序显示 q
我正在开发一个使用 RFID 读取器的项目,该读取器只能与 C# 中的库一起使用。问题是我真的很想使用 Java(开发程序的其余部分、GUI 等),并使用 C# 程序只是为了让读者读取信息并向 Jav
我对 Observables 有疑问。我的基本沟通没有问题,例如:服务: getTableRecords(): Observable { return this.http
最近,为了方便玩游戏,我想看看是否可以制作一个 Discord Bot,允许将一个 channel 的所有音频传输到另一个 channel 。我们的想法是,您将拥有一种“观众” channel ,供人
最近,为了方便玩游戏,我想看看是否可以制作一个 Discord Bot,允许将一个 channel 的所有音频传输到另一个 channel 。我们的想法是,您将拥有一种“观众” channel ,供人
我的应用程序中有一个 Account 类,它是用户的银行账户。这将初始化两个名为 Withdrawals 和 Deposits 的类。它们看起来像这样: Account.h @interface Ac
当管道的写入端关闭时, read 管道返回 0: #include int main() { int pipefd[2]; char c; pipe(pipefd);
我正在尝试这个: var child = spawn('node', args, {cwd: parentDir, stdio: 'ipc'} ); (args是一个参数数组) 但它给出了以下错误:
我是一名优秀的程序员,十分优秀!