我想开发一个持续接收二进制数据的 iOS 应用程序,我需要在应用程序中生动地传输它。
通过谷歌搜索,我收到了以下代码来建立连接:
let configuration = NEHotspotConfiguration.init(ssid: "SSID Name", passphrase: "12345678", isWEP: false)
configuration.joinOnce = true
NEHotspotConfigurationManager.shared.apply(configuration) { (error) in
if error != nil {
if error?.localizedDescription == "already associated."
{
self.connectionLabel.text = "Connected"
}
else{
self.connectionLabel.text = "Not Connected"
}
}
else {
self.connectionLabel.text = "Connected"
}
}`
问题:
通过使用上面的代码,我可以连接 WiFi 模块/路由器,但连接会在一段时间内中断?
我是第一次接触网络应用,所以我不知道如何接收 WiFi 模块/路由器发送的数据以及如何实时获取数据?
回答时请注意,我是 iOS 网络应用的新手。
最佳答案
应用已断开连接,因为您已将 joinOnce
设置为 true
。根据苹果文档:
当 joinOnce
设置为 true 时,只要配置它的应用程序在前台运行,热点就会保持配置和连接状态。当发生以下任何事件时,热点将断开连接并删除其配置:
应用在后台停留超过 15 秒。
设备休眠。
应用程序崩溃、退出或被卸载。
该应用将设备连接到不同的 Wi-Fi 网络。
用户将设备连接到不同的 Wi-Fi 网络。
要断开设备与配置为 joinOnce 设置为 true 的热点的连接,请调用 removeConfiguration(forSSID:)
.
如果你想连接到那个网络,忽略joinOnce
& lifeTimeInDays
属性(不要设置)。
关于ios - 如何在 iOS 应用程序上接收连接的 WiFi 模块/路由器发送的数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53004409/