android - 当两台机器的ip不断变化时,它们如何相互检测?

标签 android macos networking bluetooth wifi

让我描述一下我想要实现的目标以及我遇到的困难。可以提出一个完全不同的替代方案。

  1. 我有一部带 NFC 功能的 Android 手机。
  2. 我有一台 macbook pro。
  3. 无线网络。

每当我在手机上点击某个 NFC 标签时,我都希望我的 Macbook 运行某个脚本。

所以我做了以下

  1. 每当设备感应到特定 NFC 标签时调用的 android 应用程序。
  2. 我的 Macbook 运行 NodeJS HTTP 服务器
  3. Android 应用程序向 NodeJS 发送 HTTP 请求,然后 NodeJS 调用我想要运行的任何脚本。

此设置在我家中非常有效,我可以将我的 Macbook 的 IP 地址设置为任何我想要的。但是当我在星巴克(或工作场所)并且我的 Android 和 Macbook 都在同一个 Wifi 网络上时,我希望相同的设置能够透明地工作。 (我不想手动输入 IP 地址)。

当我读到一半时,我意识到我可以在 Macbook 上使用蓝牙功能,但我可能不得不在 macbook 上编写一个复杂的程序来收听 Android 设备并接受命令。

最佳答案

在 Android 上,使用 Network Service Discovery .如果您使用的是较早的目标,jmDNS是你的 friend 。我只用它来让 Android 设备找到彼此,但这应该与您 Mac 上的 bonjour 服务兼容。

关于android - 当两台机器的ip不断变化时,它们如何相互检测?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16555864/

相关文章:

macos - 无法在 Mac OS X 上安装 scipy

android - 按钮操作上的 FC(如果... toast )

android - 如何在android中使用相机检测 Logo ?

android - 常见/典型 Android 设备上的触摸点数量

python - 我的 Python MySQLdb 模块出了什么问题?

python - 使用 PyDSTool 求解网络上的 ODE

android - IntentService 不会开始使用 AlarmManager

java - OS X 上 Java 中的 GUI/线程不稳定性;似乎与 Swing/AWT -> Cocoa 桥有关

git - 无法在学校网络上推送到github

Java 服务器/客户端应用程序仅在按 Enter 键时显示消息