【问题标题】:CoreWLAN: 'CWInterface' has no member 'commitConfiguration'CoreWLAN:“CWInterface”没有成员“commitConfiguration”
【发布时间】:2017-12-01 14:29:18
【问题描述】:

我的目标是使用 CoreWLAN 重新排序无线网络列表。

当我编译以下 sn-p 时,出现以下错误:wifi.swift:21:6: error: value of type 'CWInterface' has no member 'commitConfiguration'

但根据https://developer.apple.com/documentation/corewlan/cwinterface/1426430-commitconfiguration 它应该可以工作。我做错了什么?

请注意,我对此使用 TextMate 并使用 swiftc -o wifi wifi.swift 进行编译

import Foundation
import CoreWLAN

let config = CWWiFiClient.shared().interface()?.configuration() 
let mutableConfig = CWMutableConfiguration(configuration: config!)

let networkProfiles = mutableConfig.networkProfiles
let mutable = networkProfiles.mutableCopy() as! NSMutableOrderedSet

let indexSet = IndexSet(integer: 0)
mutable.moveObjects(at: indexSet, to: 2)
debugPrint(mutable)
mutableConfig.networkProfiles = mutable


let finalConfig = CWConfiguration(configuration: mutableConfig)
dump(finalConfig)
do {
    let interface = CWWiFiClient.shared().interface()!
    try interface.setPower(true)
    try interface.commitConfiguration(finalConfig, authorization: nil)
} catch {}

【问题讨论】:

    标签: swift macos-sierra corewlan


    【解决方案1】:

    找到了!

    你必须import SecurityFoundation

    重现问题的更好示例代码:

    import Foundation
    import CoreWLAN
    let configuration = CWWiFiClient.shared().interface()?.configuration()
    let profiles = CWWiFiClient.shared().interface()?.commitConfiguration(configuration, authorization: nil)
    

    如果需要,请使用雷达 33029361。

    【讨论】:

      猜你喜欢
      • 2013-05-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多