如何在我的 android 应用程序中访问 raspberry.local?

How to access raspberry.local in my android application?

我在我的 raspberry-pi 上使用 运行 Django,我正在使用 avahi-daemon[=44= 上访问我的 rpi ]。在我的 Django 上,我为我的 android 应用程序制作了 API,以便通过 HTTP 协议进行访问。例如,我的一个 http 请求 url 是:http://raspberrypi.local/api/getUserNames/

问题是 android 无法在我的本地 wifi 网络上访问这个 url,我已经确认我的 android 设备和 rpi 都连接到同一个 wifi 网络,但 http://raspberrypi.local 仍然无法在 android 上运行。虽然它在我的电脑上运行良好 & MAC.

我试图找到解决方案并经历了很多关于 bonjour、mDNS、jmDNS、android-multicast 的问答。但所有这些要么太混乱而无法实施,要么不起作用。请帮助我,我卡住了一段时间。

注意: 在我的 Rpi 上,avahi-daemon 将自身广播为 "_workstation._tcp。"服务类型

--

我的解决方案:

http://www.dodgycoder.net/2015/02/setting-up-bonjourzeroconfmdnsnsd.html

Android NSD(网络服务发现)解决了我的问题。我只使用了 Discovery Listener 和 Resolve Listener 来解决我的目的。 我专门使用 SERVICE_TYPE = "_workstation._tcp."; 来使用 avahi-daemon

搜索 raspberrypi.local

Android NSD(网络服务发现) 解决了我的问题。我只用了Discovery Listener和Resolve Listener来解决我的目的

注意- 您必须使用 SERVICE_TYPE = "_workstation._tcp."; 才能使用 avahi-daemon

搜索 raspberrypi.local

这是 link 的解决方案 - http://www.dodgycoder.net/2015/02/setting-up-bonjourzeroconfmdnsnsd.html