![](/img/trans.png)
[英]iOS 13: Network connected via NEHotspotConfiguration disconnects after a few seconds
[英]iPadOS: Network connected via NEHotspotConfiguration disconnects after a while
我的應用程序使用NEHotspotConfigurationManager
通過 Wi-Fi 將自身連接到某個設備。 該設備充當 WPA2 接入點。 在較舊的 iOS 版本(iOS 12 及更低版本)中,一切正常,但在 iPadOS/iOS 13 中,設備每次都會在一段時間后斷開連接。 如何在不永久存儲NEHotspotConfiguration
情況下保持連接?
我懷疑它與一項新功能有關 - 多窗口(我的應用程序不支持)。 原因是在我的NEHotspotConfiguration
我將joinOnce
標志設置為true
(因為永遠不應該在應用程序之外使用設備的網絡)。 Apple 的文檔指出:
當 joinOnce 設置為 true 時,只要配置熱點的應用程序在前台運行,熱點就會保持配置和連接狀態。 當發生以下任何事件時,熱點將斷開連接並刪除其配置:
- 應用程序在后台停留超過 15 秒。
- 設備休眠。
- 應用程序崩潰、退出或被卸載。
- 該應用程序將設備連接到不同的 Wi-Fi 網絡。
也許我的應用程序被錯誤地識別為離開前台。
將joinOnce
設置為false
會使應用程序保持連接,但這不是一個可接受的解決方案,因為我的設備不提供 Internet 連接並且不能在應用程序之外使用它。
以下是我應用熱點配置的方法:
let hotspotConfiguration = NEHotspotConfiguration(ssid: self.ssid, passphrase: self.passphrase, isWEP: false)
hotspotConfiguration.joinOnce = true
NEHotspotConfigurationManager.shared.apply(hotspotConfiguration) { error in
// connection is successfully applied
// and about 15 seconds later it is lost.
}
我希望在joinOnce
標志設置為true
時保持連接。
Apple 似乎已經在 iOS 13.4 beta 2 中解決了這個問題,現在它可以按照文檔使用joinOnce = true
。 蘋果論壇相關討論
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.