如何在 ios 中知道设备与哪个网络主机连接

Posted

技术标签:

【中文标题】如何在 ios 中知道设备与哪个网络主机连接【英文标题】:How to know in ios that with which network host the device is connected 【发布时间】:2016-12-27 05:41:00 【问题描述】:

如何在 ios 中知道设备连接到哪个网络主机。 我想在 Swift 中学习,我们如何检查我们连接的特定网络。

【问题讨论】:

使用可达性框架,它会帮助你解决问题 Reachability 来自苹果 AFNetworking 也有帮助,包括可达性 【参考方案1】:

使用此自定义类访问您当前连接的 wifi 网络:-

import Foundation
import SystemConfiguration.CaptiveNetwork

public class SSID 

    class func fetchSSIDInfo() -> String 

        var currentSSID = ""
        if let interfaces = CNCopySupportedInterfaces() 
            for i in 0..<CFArrayGetCount(interfaces) 
                let interfaceName: UnsafeRawPointer = CFArrayGetValueAtIndex(interfaces, i)
                let rec = unsafeBitCast(interfaceName, to: AnyObject.self)
                let unsafeInterfaceData = CNCopyCurrentNetworkInfo("\(rec)" as CFString)
                if unsafeInterfaceData != nil 
                    let interfaceData = unsafeInterfaceData! as NSDictionary!
                    print(interfaceData)
                    currentSSID = interfaceData?.value(forKey:"SSID") as! String
                
            
        
        return currentSSID
    

您可以通过这种方式获取信息:-

print(SSID.fetchSSIDInfo())

【讨论】:

以上是关于如何在 ios 中知道设备与哪个网络主机连接的主要内容,如果未能解决你的问题,请参考以下文章

如何知道哪个设备连接在哪个 /dev/ttyUSB 端口

如何在同一个wifi中获取其他设备的主机名?

如何在 Linux 中更改主机名?运维工程师应该都知道吧!

上下位机网络通讯怎么保密运行

iOS如何播放在文件夹里面存放的音乐呢?

如何在没有主机的情况下启动我的 Flutter 应用程序?