iOS App内连接WiFi

背景:给智能设备配置网络,需要直连智能设备发射的Wi-Fi

目前技术:iOS11后苹果提供 NEHotspotConfigurationManager 类直连周边Wi-Fi,iOS11前只能跳转到系统设置界面手动连接Wi-Fi


苹果后台创建项目Identifiers并申请Hotspot权限

image.png
image.png

项目中导入NetworkExtension框架

image.png

项目Capablities将Hotspot Configuration打开,不然不发调试(必须真机上调试)

image.png

如果没有连接WiFi时的弹框

IMG_3218.PNG

如果连接但不是目标WiFi时的弹框

IMG_3219.PNG
import NetworkExtension //导入网络扩展框架


//核心代码(@available(iOS 11.0, *))
 func connectWifi(){
        if #available(iOS 11.0, *) {
            let hcg =  NEHotspotConfiguration(ssid: "Centa-XXX", passphrase: "XXX", isWEP: false)
            NEHotspotConfigurationManager.shared.apply(hcg) { (erro) in
                if erro == nil {
                    print("链接wifi成功")
                }else{
                    print(erro?.localizedDescription ?? "未知错误")
                }
            }
        } else {
            // 跳转至设置界面
        }
    }

你可能感兴趣的:(iOS App内连接WiFi)