Bagikan melalui


Windows.Devices.WiFiDirect Ruang nama

Berisi kelas yang mendukung koneksi ke perangkat Wi-Fi Direct terkait dan titik akhir terkait untuk PC, tablet, dan ponsel.

Kelas

WiFiDirectAdvertisement

Mewakili iklan Wi-Fi Direct dan memungkinkan aplikasi mengontrol status mendengarkan dan elemen informasi kustom dalam iklan.

WiFiDirectAdvertisementPublisher

Objek untuk menerbitkan iklan Wi-Fi Direct.

WiFiDirectAdvertisementPublisherStatusChangedEventArgs

Menyediakan data untuk peristiwa StatusChanged pada WiFiDirectAdvertisementPublisher.

WiFiDirectConnectionListener

Kelas yang digunakan untuk mendengarkan permintaan koneksi Wi-Fi Direct yang masuk.

WiFiDirectConnectionParameters

Digunakan oleh aplikasi untuk menentukan parameter koneksi untuk operasi Wi-Fi Direct connect/pairing.

Aplikasi sampel yang menggunakan kelas ini mencakup sampel Wi-Fi Direct.

WiFiDirectConnectionRequest

Permintaan koneksi Wi-Fi Direct yang diterima oleh WiFiDirectConnectionListener.

WiFiDirectConnectionRequestedEventArgs

Menyediakan data untuk peristiwa ConnectionRequested pada WiFiDirectConnectionListener.

WiFiDirectDevice

Mengelola koneksi ke perangkat Wi-Fi Direct terkait.

WiFiDirectInformationElement

Mewakili elemen informasi dalam paket Wi-Fi Direct.

WiFiDirectLegacySettings

Pengaturan yang mengatur mode "warisan" (koneksi non-Wi-Fi Direct ke titik akses yang diiklankan.)

Enum

WiFiDirectAdvertisementListenStateDiscoverability

Menentukan apakah perangkat Wi-Fi Direct mendengarkan dan dapat ditemukan.

WiFiDirectAdvertisementPublisherStatus

Mewakili kemungkinan status WiFiDirectAdvertisementPublisher.

WiFiDirectConfigurationMethod

Menentukan metode konfigurasi Wi-Fi Direct. Konfigurasi adalah cara pengguna memberi tahu satu bagian peralatan Wi-Fi Direct untuk terhubung ke bagian lain dari peralatan Wi-Fi Direct.

WiFiDirectConnectionStatus

Menjelaskan status koneksi objek WiFiDirectDevice .

WiFiDirectDeviceSelectorType

Menentukan jenis pemilih perangkat untuk Wi-Fi Direct.

WiFiDirectError

Menentukan beberapa kasus kesalahan Wi-Fi Direct yang umum.

WiFiDirectPairingProcedure

Menentukan prosedur pemasangan langsung.

Contoh

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(); 
    }
}

Keterangan

Anda dapat menggunakan kelas WiFiDirectDevice untuk membuat koneksi soket dengan perangkat lain yang memiliki perangkat berkemampuan Wi-Fi Direct (WFD). Anda dapat memanggil metode GetDeviceSelector untuk mendapatkan pengidentifikasi perangkat untuk perangkat Wi-Fi Direct. Setelah Anda memiliki referensi ke WiFiDirectDevice di komputer Anda, Anda dapat memanggil metode GetConnectionEndpointPairs untuk mendapatkan objek EndpointPair dan membuat koneksi soket menggunakan kelas di namespace Windows.Networking.Sockets .

Anda dapat menambahkan handler untuk peristiwa ConnectionStatusChanged yang akan diberi tahu ketika koneksi telah dibuat atau terputus.

Hanya satu aplikasi yang dapat dihubungkan ke perangkat Wi-Fi Direct pada satu waktu.

Anda harus mengaktifkan kemampuan Kedekatan untuk berkomunikasi dengan perangkat Wi-Fi Direct.

Lihat juga