iOS - 如何从热点 (iPhone) 向连接的客户端 (IoT 设备) 发送消息

标签 ios raspberry-pi iot personal-hotspot

我在谷歌上搜索过,只在 iOS 中找到了 MultipeerConnectivity 框架,但我不知道如何让它适用于我的具体情况。

我想做的流程是这样的:

  1. 在 iOS 中启用个人热点
  2. 从树莓派连接到热点
  3. 连接客户端后,从 iOS 应用程序发送消息字符串。

假设树莓派连接已经整理好了(我们使用热点的静态SSID和密码)

出现的问题是:

  • 我应该使用哪个框架(假设已经有)?
  • 我是否需要在应用中明确宣传 iOS 设备?
  • 我如何在树莓派连接到手机时收到通知?
  • 如何向连接的客户端发送消息?

最佳答案

虽然我从来没有为 Pi 开发过任何东西,但我为 iOS 设备开发了网络服务浏览,所以可以给出答案。 当你连接到 iPhone 热点时,它是一个普通的 WiFi 连接,所以在这里你可以使用 Bonjour 协议(protocol) (mDNS) 来发现彼此的设备。

在 Pi 上运行 Avahi mDNS 服务,并在 iPhone 上发现它。

这里是 how to run Avahi on Pi .

Here是如何在 iPhone 上发现 mDNS 网络服务。

在使用 NSNetServiceBrowser 发现网络服务后,您将在 iPhone 上获得可用的 IP 地址和 Pi 端口,因此您可以连接到它。

关于iOS - 如何从热点 (iPhone) 向连接的客户端 (IoT 设备) 发送消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56332237/

相关文章:

Linux 临时模式

linux - 具有少量父设备属性的 udev 规则

c - 如何使用与代理的单个连接从多个设备发布数据

iot - 如何为 headless 设备提供和检查 Wifi 凭据

ios - 按下按钮时播放随机声音 Swift 2.0

ios - watchKit 控制台日志显示,但 iOS 应用程序不显示?

ios - 如何让我的应用程序显示在 "open-in"- ios13 中 plist 文件的菜单中?

c++ - 如何在树莓派上的 Arm 组装中获取纪元时间并将其转换为本地时间?

docker - 将 IBM Containers (Dockers) 连接到 Watson IoT 服务实例

iphone - 从 UITableView 更改我要推送到的 View 中的 UILabel