2

私のコードでは、SCNetworkSetGetServiceOrder を使用してネットワーク サービスの順序を取得しようとしています。以下のように

Ethernet
FireWire
Wi-Fi
Bluetooth PAN
Thunderbolt Bridge

私は以下のコードを使用しています

    -(void)getserviceorder
    {
           CFArrayRef          interfaces;
            CFIndex            interfaceCount;
            CFIndex            interfaceIndex;
            CFMutableArrayRef  result;
            CFArrayRef *portArray;
            portArray = NULL;
            result = NULL;
            interfaces = NULL;
                if (SCNetworkInterfaceCopyAll != NULL) {
                interfaces = SCNetworkInterfaceCopyAll();
                interfaceCount = CFArrayGetCount(interfaces);

            for (interfaceIndex = 0; interfaceIndex < interfaceCount;
                 interfaceIndex++) {
                SCNetworkInterfaceRef  thisInterface;
                SCNetworkSetRef set =         CFArrayGetValueAtIndex(interfaces,interfaceIndex);
                assert(thisInterface != NULL);

               NSLog(@"SCNetworkSetGetServiceOrder is %@",SCNetworkSetGetServiceOrder(set));

            }
                CFRelease(interfaces);
}

ただし、常に null を返します。これは適切な方法ですか、または SCNetworkSetGetServiceOrder メソッドを使用してサービスの注文を取得するにはどうすればよいですか。method(SCNetworkSetRef set)のパラメータであるの値は何であるべきか。SCNetworkSetGetServiceOrderこれについてどこで詳しく知ることができますか

4

1 に答える 1