问题标签 [jmdns]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1437 浏览

android - 为什么 JmDNS 服务发现可以在运行 Android 2.1-update1 的摩托罗拉 Droid 上工作,而不是在运行相同 Android 版本的 HTC Incredible 上工作?

我已经通过使用 MulticastLock 成功地让 JmDNS 在摩托罗拉 Droid 上进行 Android 2.1 测试,但最近获得了 HTC Incredible 作为第二个测试设备,并且 JmDNS 发现根本不起作用。我应该提到广播服务仍然有效,一切似乎都正常运行,但 serviceAdded() 永远不会被调用。有没有人想过为什么会这样?我在想这可能是一个权限问题,但我没有得到任何例外......

0 投票
3 回答
17686 浏览

android - Android 2.2 上的多播

有没有人让多播在 Android 2.2 上工作,特别是用于 Bonjour 服务检测的 JmDNS。Android 1.5->2.0 时间范围内有许多问题和答案,包括在 stackOverflow 上,表明不同程度的成功,以及错误跟踪器中的错误,表明它已修复并关闭,对于 2.2 ( http://code .google.com/p/android/issues/detail?id=2323)。我已经尝试过“TuneControl”源代码,但它在 ~1.5 上有效并且尚未更新,并且在 2.2 上不适用于我。

所以,问题... 1) 有没有在 2.2 上看到多播工作,特别是 JmDNS,特别是用于 Bonjour 服务检测?

2)在代码中需要什么才能使这项工作?

我正在使用适当的权限:

<uses-permission android:name="android.permission.CHANGE_WIFI_MULTICAST_STATE" />

我获得了多播锁:

然后尝试启动 jmDNS 来寻找服务器:

侦听器永远不会看到任何服务。我已经使用 Wireshark 验证了请求数据包已发送,并且服务器进行了响应,但 jmDNS 库中的套接字侦听器代码从未看到响应数据包。

所以......我错过了什么吗?这仍然是一个错误吗?有没有人得到任何远程这样的工作???

0 投票
1 回答
4299 浏览

java - 如何在 Android 上成功使用 JmDNS?

按题...
我是安卓新人!!!!
我已经尝试在 Android 上成功实施 JmDNS 两个多星期了...
(不仅在 Google IDEOS 手机上,而且在 Eclipse 上)...
我已经尝试过“TestBonjour”代码(评论 22)...
http://code.google.com/p/android/issues/detail?id=2917
但是还是不行!!
谁能帮我解决这个问题?
谢谢一百万,原谅我糟糕的英语!!

0 投票
1 回答
602 浏览

android - JMDNS works on simulator but not on device

I am attempting to use JMDNS to resolve a local network host's IP address. It works fine on simulator but not on phone. Anybody has any idea what the reason may be?

thanks a lot.

0 投票
5 回答
37413 浏览

android - Bonjour 在 Android 上的实现

我正在尝试在我的 android 应用程序上实现 bonjour/zero conf。我正在使用 jmDns 库来搜索所有可用的设备。这是我用于搜索同一网络中的设备的代码:

基本上,我将它们添加到列表中,以便显示所有可用设备的列表。现在,当我运行此代码时,我没有收到任何异常/没有类似错误的情况。但另一方面,我的列表中没有添加任何内容 [PS:网络中至少有 5-6 台 PC 和 Mac。

我还尝试从此代码中获取列表:

listener在活动中定义onCreate。但这也没有返回任何设备。

请帮忙,建议我在这里做错了什么。任何帮助表示赞赏!

0 投票
2 回答
2997 浏览

android - Android 上的 JmDNS

你在 Android 中使用 jmdns 成功发现服务了吗?我面临同样的问题,无法在 Android 中使用 jmdns 发现服务。

从我使用 jmdns 的代码中,我试图发现以下类型的服务:

我已经在我的 Linux Ubuntu PC 上安装了 _afpovertcp._tcp 服务类型(Avahi 包)。我的 Android 手机和我的代码和 linux 机器都配置为 WI-FI。仍然无法发现我的 Linux PC。

0 投票
1 回答
5171 浏览

android - 在 Android/多线程上实现 JmDNS

我试图让 JmDNS 在我的 android 程序中工作。我能够让它发现我想要的设备,但我不完全了解如何将信息从 JmDNS 获取到启动 JmDNS 任务的对象。这是我的代码。

我遇到的问题是我有一个服务管理器对象,它有一个浏览器对象的实例,其中包含浏览方法。我无法让服务管理器对象访问地址变量。因为 JmDNS 在创建它以运行其任务时会产生自己的线程,所以我尝试使用处理程序和 runnable 来发送带有变量的消息,但我似乎无法正确处理。任何人都可以帮忙吗?

0 投票
1 回答
572 浏览

android - 应用程序进入 ANR 模式

当用户在我的应用程序中按下后退按钮时。这是场景:

  1. 用户启动应用程序 - 活动显示
  2. 用户按下返回按钮
  3. 用户重新启动应用程序。 此时应用程序只显示一个空白屏幕,没有按钮(主页/返回)响应,一段时间后强制关闭对话框出现。
    注意:如果用户按下“主页”然后重新启动应用程序,则不会发生这种情况,只有当用户按下“返回”然后重新启动它时才会发生。

在我的 onCreate() 中,我有一些网络设置代码。但是,onDestroy() 有相应的清理代码,所以我不明白为什么会这样。

不知道发生了什么,也不知道如何调试。

有趣的是—— “Zeroconf Browser” 是我从 Android Market 下载并用于调试我的流行应用程序——似乎也有同样的问题。

编辑:将代码从 onStart()/onStop() 更改为 onCreate()/onDestroy()。和以前一样的问题。

编辑:对于遇到类似问题的任何人,这就是造成我痛苦的原因。Android 代码不是罪魁祸首: http: //sourceforge.net/tracker/index.php ?func=detail&aid=2933183&group_id=93852&atid=605791

0 投票
2 回答
5319 浏览

android - 网络设备发现

对于我的 Android 应用程序,用户需要连接到将托管在同一 LAN 中某处的服务器。在同一个 LAN 上可以托管多个服务器。为了方便用户,我打算扫描 Android 设备连接到的当前 LAN,然后列出所有运行服务器的网络设备,而不是让用户将 IP 输入计算机手动。

我对网络还很陌生,经过一番搜索,我发现我必须使用多播 DNS 搜索或 UDP 广播来检测其他设备。我还找到了一个名为 jmDNS 的不错的库,尽管我发现它上面的文档和示例代码非常少。有人可以指出我正在努力做的事情以节省我浪费的时间(主要是如果我走在正确的轨道上)的正确方向吗?我假设我必须稍微修改我的服务器才能广播它?如果我将 IP 手动输入到我的应用程序的配置页面中,它会完全按预期工作。此外,这只需要发现 Windows 计算机,不确定这是否重要。提前致谢。

0 投票
2 回答
1361 浏览

java - Bonjour 服务在 Equinox 中使用 JmDNS 发布,但不在 Apache Felix 中发布

我面临一个奇怪的问题。我已经为 JmDNS 3.1.6 创建了一个 OSGi 包,并且已经在 Equinox 中成功地使用它来发布服务近两年了。我最近迁移到 Apache Felix。不幸的是,同一个 JmDNS 捆绑包,即使安装没有问题,似乎也不再导出任何服务。这是我用来发布服务的代码

在我的 Mac 上使用 Bonjour 浏览器,我可以看到没有发布任何服务,即使上面的代码执行时没有任何异常。以下是 Felix 对我安装的捆绑包的看法。

我搜索了一个关于如何在 OSGi 中使用 JmDNS 的教程,但在网上没有找到任何东西。如果有人能给我提示可能是什么问题或指出我有用资源的方向,我将不胜感激。

提前感谢您的帮助和欢呼,乔治

编辑:我现在已经迁移到 maven 存储库中的 JmDNS 3.2.2 并在 Felix 中使用它。我不再直接使用 javax.jmdns.impl 中的类,如我之前的帖子所示(我已经更新了上面的源代码清单)。但是,仍然没有运气。JmDNS 似乎以某种方式工作。我已将 JmDNS 的日志记录级别设置为最好 - 这是我得到的摘录。

编辑:这是我的 Felix 实例的 jstack 输出的摘录(我已排除所有列为可运行或定时等待的线程):