WiFiDirectDevice Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mengelola koneksi ke perangkat Wi-Fi Direct terkait.
public ref class WiFiDirectDevice sealed : IClosable
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class WiFiDirectDevice final : IClosable
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class WiFiDirectDevice : System.IDisposable
Public NotInheritable Class WiFiDirectDevice
Implements IDisposable
- Warisan
- Atribut
- Penerapan
Persyaratan Windows
Rangkaian perangkat |
Windows 10 (diperkenalkan dalam 10.0.10240.0 - for Xbox, see UWP features that aren't yet supported on Xbox)
|
API contract |
Windows.Foundation.UniversalApiContract (diperkenalkan dalam v1.0)
|
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 API 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.
Properti
ConnectionStatus |
Mendapatkan status koneksi untuk perangkat WiFi-Direct. |
DeviceId |
Mendapatkan Id DeviceInformation untuk perangkat Wi-Fi Direct. |
Metode
Close() |
Tutup koneksi perangkat Wi-Fi Direct yang aktif. |
Dispose() |
Melakukan tugas yang ditentukan aplikasi yang terkait dengan membebaskan, merilis, atau mengatur ulang sumber daya yang tidak dikelola. |
FromIdAsync(String) |
Membuat instans kelas WiFiDirectDevice untuk id antarmuka perangkat yang ditentukan. |
FromIdAsync(String, WiFiDirectConnectionParameters) |
Membuat instans kelas WiFiDirectDevice untuk id antarmuka perangkat yang ditentukan dengan parameter koneksi tertentu. |
GetConnectionEndpointPairs() |
Mendapatkan kumpulan alamat jaringan untuk perangkat Wi-Fi Direct sebagai pasangan titik akhir. |
GetDeviceSelector() |
Mengembalikan string pilihan kelas yang bisa Anda gunakan untuk menghitung perangkat Wi-Fi Direct. |
GetDeviceSelector(WiFiDirectDeviceSelectorType) |
Mengembalikan string pilihan kelas yang bisa Anda gunakan untuk menghitung perangkat Wi-Fi Direct untuk jenis pemilih perangkat Wi-Fi Direct tertentu. |
Acara
ConnectionStatusChanged |
Terjadi ketika koneksi perangkat Wi-Fi Direct tersambung atau terputus. |
Berlaku untuk
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk