CoreWLAN: CWInterface не имеет члена commitConfiguration
Моя цель - изменить порядок списка беспроводных сетей с помощью CoreWLAN.
Когда я компилирую следующий фрагмент, я получаю следующую ошибку: 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 {}
1 ответ
Нашел это!
Вы должны import SecurityFoundation
Лучший пример кода для воспроизведения вопроса:
import Foundation
import CoreWLAN
let configuration = CWWiFiClient.shared().interface()?.configuration()
let profiles = CWWiFiClient.shared().interface()?.commitConfiguration(configuration, authorization: nil)
пожалуйста, сделайте копию радара 33029361, если это необходимо.