2012-11-16 53 views
3

我想獲得一個區域內可用的所有WiFi網絡及其SSID和SSIDDATA值。 使用this我能夠獲得我正在使用的WiFi網絡的SSID和SSIDDATA值。但問題是如何獲得所有WiFi網絡的SSID和SSIDDATA,即使我沒有連接到一個。我不想使用私有API來做這件事,比如在絆腳石的情況下,它會被AppStore拒絕。請指教。我如何獲得使用CaptiveNetwork的可用WiFi網絡列表

+0

人,它是一個小小的要求,請說明理由沿着向下表決... – NiKKi

+0

你有沒有得到這個? – Imran

+0

沒有。不使用私有API是不可能的。 – NiKKi

回答

1

簡單的答案是,如果不使用私有API,你就無法獲得它們。

-1

我相信你也許可以通過蘋果的SystemConfiguration API

another post此代碼段可能是有用的:

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 
    } 
} 
+0

這將只返回當前連接的wifi信息。問題是所有可用的WiFi網絡,並沒有連接。首先,在寫任何答案之前嘗試理解這個問題。 – HPM

相關問題