如何快速打印当前的本地网络名称

时间:2019-07-20 07:31:46

标签: swift xcode networking network-scan

我正在创建一个iOS应用,该应用在屏幕顶部显示当前的本地网络名称,依此类推。我正在尝试解决各种显示方式,但是我无法管理当前程序。有人可以帮我吗?

我已经查看了几个GitHub,堆栈溢出和youtube对此的评论,但是其中的任何一个都起作用。

在当前使用的Xcode中,我使用的是Xcode(10.4.2)。我正在使用标签(如果我应该使用其他名称,请改正我)以显示名为->的当前Wifi(WiFi:... ...)

1 个答案:

答案 0 :(得分:1)

请不要在模拟器上进行测试,请使用iphone进行测试。

导入SystemConfiguration:

import SystemConfiguration.CaptiveNetwork

在ViewDidLoad中:

let wifiName = getWiFiName()
print("Wifi: \(String(describing: wifiName))")

功能:

func getWiFiName() -> String? {

    var serviceSetIdentifier:String?
    if let interfaces = CNCopySupportedInterfaces() as Array? {
        interfaces.forEach { interface in
            guard let interfaceInfo = CNCopyCurrentNetworkInfo(interface as! CFString) as NSDictionary? else { return }
                serviceSetIdentifier = interfaceInfo[kCNNetworkInfoKeySSID as String] as? String
            }
    }
    return serviceSetIdentifier
}