我想获取一个区域内所有可用的 WiFi 网络及其 SSID 和 SSIDDATA 值。使用它,我可以获得我正在使用的 WiFi 网络的 SSID 和 SSIDDATA 值。但问题是如何获取所有可用 WiFi 网络的 SSID 和 SSIDDATA,即使我没有连接到其中一个。我不想使用私有 API 来做这件事,因为它会被 AppStore 拒绝。请指教。
问问题
1306 次
2 回答
1
简单的答案是,如果不使用私有 API,您将无法获得它们。
于 2013-03-19T15:57:37.220 回答
0
我相信您也许可以通过 Apple 的SystemConfiguration API。
来自另一篇文章的这段代码可能有用:
import UIKit
import Foundation
import SystemConfiguration.CaptiveNetwork
class FirstView: UIViewController
{
@IBOutlet weak var label: UILabel!
override func viewDidLoad()
{
super.viewDidLoad()
let ssid = self.getWiFiName()
print("SSID: \(ssid)")
}
func getWiFiName() -> String? {
var ssid: String?
if let interfaces = CNCopySupportedInterfaces() as NSArray? {
for interface in interfaces {
if let interfaceInfo = CNCopyCurrentNetworkInfo(interface as! CFString) as NSDictionary? {
ssid = interfaceInfo[kCNNetworkInfoKeySSID as String] as? String
break
}
}
}
return ssid
}
}
于 2017-02-01T00:35:30.697 回答