从不打电话给 NEHotspotHelper.register returns
Call to NEHotspotHelper.register never returns
我正在开发一个 iOS 应用程序,它需要自动连接到 WiFi 网络。我们已向 Apple 请求 NEHotspotHelper 扩展,该扩展已获批准。
现在我正在尝试自动连接到周围的WiFi网络。但是对方法 NEHotspotHelper.register 的调用从不 returns。我在应用程序的权利文件中添加了权利 com.apple.developer.networking.HotspotHelper 并且我还在使用启用了上述权利的新创建的配置文件。试图让它从上周开始工作。看起来像我发现很难抓住的小东西。请帮忙。
下面是我的代码
if let strWiFi = UserDefaults.standard.value(forKey:"WiFiSSID") as? String {
let queue = DispatchQueue(label: "com.mycompany.myapp")
NEHotspotHelper.register(options: nil, queue: queue,
handler: {(_ cmd: NEHotspotHelperCommand) -> Void in
if cmd.commandType == .evaluate || cmd.commandType == .filterScanList {
var hotspot:NEHotspotNetwork?
for network: NEHotspotNetwork in cmd.networkList! {
print("network name:\(network.ssid)")
if (network.ssid == strWiFi) {
network.setConfidence(.high)
let strPassword = UserDefaults.standard.value(forKey:"WiFiPassword") as? String
network.setPassword(strPassword!)
hotspot = network
}
}
let response = cmd.createResponse(.success)
if(hotspot != nil) {
response.setNetwork(hotspot!)
}
response.deliver()
}
})
非常感谢任何帮助!
编辑: 现在,当我尝试断开连接然后重新连接回 WiFi 时,注册成功但 returns 只有当前连接网络的详细信息。我需要周围所有 WiFi 网络的详细信息。
是需要在设置->Wi-fi里面输入,只有在画面中输入才会执行助手,我也试过自动连接,但是用户需要select网络才能连接第一次。
如果用户select连接一次网络,下一次可能会自动连接,因为可能会输入命令Maintain.
查看更多:https://forums.developer.apple.com/message/138756#138756
我正在开发一个 iOS 应用程序,它需要自动连接到 WiFi 网络。我们已向 Apple 请求 NEHotspotHelper 扩展,该扩展已获批准。
现在我正在尝试自动连接到周围的WiFi网络。但是对方法 NEHotspotHelper.register 的调用从不 returns。我在应用程序的权利文件中添加了权利 com.apple.developer.networking.HotspotHelper 并且我还在使用启用了上述权利的新创建的配置文件。试图让它从上周开始工作。看起来像我发现很难抓住的小东西。请帮忙。
下面是我的代码
if let strWiFi = UserDefaults.standard.value(forKey:"WiFiSSID") as? String {
let queue = DispatchQueue(label: "com.mycompany.myapp")
NEHotspotHelper.register(options: nil, queue: queue,
handler: {(_ cmd: NEHotspotHelperCommand) -> Void in
if cmd.commandType == .evaluate || cmd.commandType == .filterScanList {
var hotspot:NEHotspotNetwork?
for network: NEHotspotNetwork in cmd.networkList! {
print("network name:\(network.ssid)")
if (network.ssid == strWiFi) {
network.setConfidence(.high)
let strPassword = UserDefaults.standard.value(forKey:"WiFiPassword") as? String
network.setPassword(strPassword!)
hotspot = network
}
}
let response = cmd.createResponse(.success)
if(hotspot != nil) {
response.setNetwork(hotspot!)
}
response.deliver()
}
})
非常感谢任何帮助!
编辑: 现在,当我尝试断开连接然后重新连接回 WiFi 时,注册成功但 returns 只有当前连接网络的详细信息。我需要周围所有 WiFi 网络的详细信息。
是需要在设置->Wi-fi里面输入,只有在画面中输入才会执行助手,我也试过自动连接,但是用户需要select网络才能连接第一次。 如果用户select连接一次网络,下一次可能会自动连接,因为可能会输入命令Maintain.
查看更多:https://forums.developer.apple.com/message/138756#138756