Freigeben über


Windows.Devices.WiFiDirect Namespace

Enthält Klassen, die das Herstellen einer Verbindung mit zugeordneten Wi-Fi Direct-Geräten und zugehörigen Endpunkten für PCs, Tablets und Smartphones unterstützen.

Klassen

WiFiDirectAdvertisement

Stellt eine Wi-Fi Direct-Ankündigung dar und ermöglicht es der App, den Listenzustand und benutzerdefinierte Informationselemente in der Ankündigung zu steuern.

WiFiDirectAdvertisementPublisher

Ein Objekt zum Veröffentlichen Wi-Fi Direct-Ankündigungen.

WiFiDirectAdvertisementPublisherStatusChangedEventArgs

Stellt Daten für ein StatusChanged-Ereignis auf einem WiFiDirectAdvertisementPublisher bereit.

WiFiDirectConnectionListener

Klasse, die verwendet wird, um auf eingehende Wi-Fi Direkte Verbindungsanforderungen zu lauschen.

WiFiDirectConnectionParameters

Wird von einer App verwendet, um die Verbindungsparameter für einen Wi-Fi Direktverbindungs-/Kopplungsvorgang anzugeben.

Beispielanwendungen, die diese Klasse verwenden, umfassen das Wi-Fi Direct Beispiel.

WiFiDirectConnectionRequest

Eine Wi-Fi Direkte Verbindungsanforderung, die von einem WiFiDirectConnectionListener empfangen wurde.

WiFiDirectConnectionRequestedEventArgs

Stellt Daten für ein ConnectionRequested-Ereignis auf einem WiFiDirectConnectionListener bereit.

WiFiDirectDevice

Verwaltet Verbindungen mit zugeordneten Wi-Fi Direct-Geräten.

WiFiDirectInformationElement

Stellt Informationselemente in einem Wi-Fi Direct-Paket dar.

WiFiDirectLegacySettings

Einstellungen für den "Legacy"-Modus (nicht Wi-Fi Direct Verbindungen mit dem angekündigten Zugriffspunkt).)

Enumerationen

WiFiDirectAdvertisementListenStateDiscoverability

Gibt an, ob das Wi-Fi Direct-Gerät lauscht und auffindbar ist.

WiFiDirectAdvertisementPublisherStatus

Stellt die möglichen Zustände des WiFiDirectAdvertisementPublishers dar.

WiFiDirectConfigurationMethod

Gibt eine Wi-Fi Direct-Konfigurationsmethode an. Bei der Konfiguration teilt ein Benutzer einem Gerät Wi-Fi Direct mit, eine Verbindung mit einem anderen Wi-Fi Direct-Gerät herzustellen.

WiFiDirectConnectionStatus

Beschreibt die Verbindung status eines WiFiDirectDevice-Objekts.

WiFiDirectDeviceSelectorType

Gibt den Geräteauswahltyp für Wi-Fi Direct an.

WiFiDirectError

Gibt einige häufige Wi-Fi Direct-Fehlerfälle an.

WiFiDirectPairingProcedure

Gibt eine direkte Kopplungsprozedur an.

Beispiele

Windows.Devices.WiFiDirect.WiFiDirectDevice wfdDevice;

private async System.Threading.Tasks.Task<String> Connect(string deviceId)
{
    string result = ""; 

    try
    {
        // No device ID specified.
        if (String.IsNullOrEmpty(deviceId)) { return "Please specify a Wi-Fi Direct device ID."; }

        // Connect to the selected Wi-Fi Direct device.
        wfdDevice = await Windows.Devices.WiFiDirect.WiFiDirectDevice.FromIdAsync(deviceId);

        if (wfdDevice == null)
        {
            result = "Connection to " + deviceId + " failed.";
        }

        // Register for connection status change notification.
        wfdDevice.ConnectionStatusChanged += new TypedEventHandler<Windows.Devices.WiFiDirect.WiFiDirectDevice, object>(OnConnectionChanged);

        // Get the EndpointPair information.
        var EndpointPairCollection = wfdDevice.GetConnectionEndpointPairs();

        if (EndpointPairCollection.Count > 0)
        {
            var endpointPair = EndpointPairCollection[0];
            result = "Local IP address " + endpointPair.LocalHostName.ToString() + 
                " connected to remote IP address " + endpointPair.RemoteHostName.ToString();
        }
        else
        {
           result = "Connection to " + deviceId + " failed.";
        }
    }
    catch (Exception err)
    {
        // Handle error.
        result = "Error occurred: " + err.Message;
    }

    return result;
}

private void OnConnectionChanged(object sender, object arg)
{
    Windows.Devices.WiFiDirect.WiFiDirectConnectionStatus status = 
        (Windows.Devices.WiFiDirect.WiFiDirectConnectionStatus)arg;

    if (status == Windows.Devices.WiFiDirect.WiFiDirectConnectionStatus.Connected)
    {
        // Connection successful.
    }
    else
    {
        // Disconnected.
        Disconnect();
    }
}

private void Disconnect()
{
    if (wfdDevice != null) 
    {
        wfdDevice.Dispose(); 
    }
}

Hinweise

Sie können die WiFiDirectDevice-Klasse verwenden, um eine Socketverbindung mit anderen Geräten herzustellen, die über ein Wi-Fi Direct(WFD)-fähiges Gerät verfügen. Sie können die GetDeviceSelector-Methode aufrufen, um den Gerätebezeichner für ein Wi-Fi Direct-Gerät abzurufen. Sobald Sie einen Verweis auf ein WiFiDirectDevice auf Ihrem Computer haben, können Sie die GetConnectionEndpointPairs-Methode aufrufen, um ein EndpointPair-Objekt abzurufen und mithilfe von Klassen im Windows.Networking.Sockets-Namespace eine Socketverbindung herzustellen.

Sie können einen Handler für das ConnectionStatusChanged-Ereignis hinzufügen, der benachrichtigt wird, wenn die Verbindung hergestellt oder getrennt wurde.

Nur eine App kann gleichzeitig mit einem Wi-Fi Direct-Gerät verbunden werden.

Sie müssen die Näherungsfunktion aktivieren, um mit Wi-Fi Direct-Geräten zu kommunizieren.

Weitere Informationen