2016-03-01 3 views
1

Я пишу приложение Cocoa в Swift, которое определяет доступные сетевые интерфейсы (wifi, ethernet и т. Д.), И я хочу извлечь параметры подтипа.Cocoa SCNetworkInterface получение медиа-подтипов

К примеру, у меня есть подключение Thunderbolt Ethernet и в моих настройках сети Мака на вкладке Hardware можно переключать скорость, чтобы быть 10baseT/UDP, 100baseTX и т.д.

Apple, документы говорят, что я могу использовать SCNetworkInterfaceCopyMediaSubTypes для получить массив доступных подтипов носителей (10BaseT/UTP, 100BaseTX и т.д.) и все, что мне нужно сделать, это дать ему параметр CFArray,

доступный
доступные опции, возвращаемый функцией SCNetworkInterfaceCopyMediaOptions.

Однако документы указывают, что SCNetworkInterfaceCopyMediaOptions возвращает Bool,

TRUE, если запрашиваемая информация была возвращена

Я пытаюсь использовать CFArray интерфейсов, извлекаемых с SCNetworkInterfaceCopyAll(), но SCNetworkInterfaceCopyMediaOptions (интерфейсы) возвращает ноль.

let interfaces = SCNetworkInterfaceCopyAll() 
print(SCNetworkInterfaceCopyMediaSubTypes(interfaces)) 

>> nil 

Вот скриншот того, что я могу смотреть в сети предпочтений

enter image description here

Как я могу получить этот список. Я использую неправильный CFArray? Я не могу определить, что еще я могу пройти, так как предлагаемое SCNetworkInterfaceCopyMediaOptions возвращает логическое значение.

ответ

0

SCNetworkInterfaceCopyMediaOptions возвращает логическое значение:

TRUE, если запрашиваемая информация была возвращена.

SCNetworkInterfaceCopyMediaOptions возвращает массив, представляющий возможные варианты медиа (подтип, опционы) в параметре available.

Смежные вопросы