Windows.Devices.WiFiDirect.Services Ruang nama
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.
Menyediakan dukungan untuk menerapkan Layanan Langsung Wi-Fi Anda sendiri.
Wi-Fi Direct adalah teknologi yang memungkinkan dua perangkat terhubung langsung satu sama lain menggunakan Wi-Fi, tanpa perlu bergabung dengan jaringan yang ada melalui titik akses. Wi-Fi Layanan Langsung adalah cara satu perangkat ( Pengiklan Layanan) menawarkan kemampuan ke perangkat lain ( Pencari Layanan) melalui koneksi Wi-Fi Direct. Pencari menggunakan layanan yang diiklankan dengan membuat sesi. Perangkat tertentu dapat mengiklankan beberapa layanan dan juga mencari beberapa layanan. Peran Seeker dan Advertiser didefinisikan sehubungan dengan bagaimana perangkat berinteraksi dalam sesi tertentu.
Meskipun spesifikasi Wi-Fi Direct Services menentukan beberapa layanan standar, API ini hanya mendukung layanan Aktifkan . Ini tidak mendukung fungsionalitas Kirim, Putar, Cetak, atau Tampilkan .
Kelas
WiFiDirectService |
Mewakili layanan Wi-Fi Direct. Kelas ini digunakan oleh kode pada perangkat yang berusaha menggunakan Wi-Fi Direct Service, untuk membuat sesi Wi-Fi Direct Service dengan penyedia layanan. |
WiFiDirectServiceAdvertiser |
Mewakili Pengiklan Layanan. Kelas ini digunakan oleh kode pada perangkat yang mengiklankan Wi-Fi Direct Services, untuk mengiklankan layanan. |
WiFiDirectServiceAutoAcceptSessionConnectedEventArgs |
Dikembalikan ketika peristiwa WiFiDirectServiceAdvertiser.AutoAcceptSessionConnected dinaikkan . |
WiFiDirectServiceProvisioningInfo |
Berisi informasi provisi tentang Wi-Fi Direct Service. |
WiFiDirectServiceRemotePortAddedEventArgs |
Dikembalikan ketika peristiwa WiFiDirectServiceSession.RemotePortAdded dinaikkan . Penanganan aktivitas Anda harus menggunakan informasi ini untuk membuat koneksi soket baru ke port baru. |
WiFiDirectServiceSession |
Mewakili sesi Wi-Fi Direct Services (WFDS). |
WiFiDirectServiceSessionDeferredEventArgs |
Dikembalikan saat peristiwa WiFiDirectService.SessionDeferred dinaikkan. |
WiFiDirectServiceSessionRequest |
Menjelaskan permintaan sesi Wi-Fi Direct Service. |
WiFiDirectServiceSessionRequestedEventArgs |
Dikembalikan saat peristiwa WiFiDirectServiceAdvertiser.SessionRequested dinaikkan . |
Enum
WiFiDirectServiceAdvertisementStatus |
Nilai yang digunakan untuk WiFiDirectServiceAdvertiser.AdvertisementStatus. |
WiFiDirectServiceConfigurationMethod |
Nilai yang menjelaskan bagaimana konfigurasi layanan dilakukan saat sesi sedang dibuat. Biasanya, tidak ada input yang diperlukan, atau satu perangkat dalam sesi menampilkan PIN dan perangkat lain mengharuskan PIN dimasukkan. |
WiFiDirectServiceError |
Nilai yang digunakan untuk properti WiFiDirectServiceAdvertiser.ServiceError . |
WiFiDirectServiceIPProtocol |
Menentukan konstanta yang menentukan protokol IP port baru saat peristiwa WiFiDirectServiceSession.RemotePortAdded dinaikkan . |
WiFiDirectServiceSessionErrorStatus |
Nilai yang digunakan dalam properti WiFiDirectServiceSession.ErrorStatus . |
WiFiDirectServiceSessionStatus |
Nilai yang digunakan untuk menjelaskan status Sesi Layanan Langsung Wi-Fi. |
WiFiDirectServiceStatus |
Nilai yang digunakan untuk menjelaskan status layanan. |
Keterangan
Mengatur Pemilik Grup (GO)
Anda mungkin ingin dapat memberikan kontrol yang tepat atas anggota grup Peer to Peer (P2P) mana yang merupakan Pemilik Grup (GO). Kode Anda harus menggunakan properti WiFiDirectAdvertiser.PreferGroupOwnerMode untuk menentukan bahwa pengiklan tertentu ingin menjadi GO. Namun, jika dua perangkat sebelumnya telah dipasangkan melalui Wi-Fi Direct, maka peran langsung Wi-Fi di profil yang disimpan dari pasangan tersebut mengambil alih preferensi yang ditentukan pengiklan. Untuk menjamin bahwa perangkat tertentu dalam pasangan P2P akan menjadi GO, Anda harus terlebih dahulu menghapus data pemasangan yang ada, menggunakan metode yang disediakan oleh namespace Windows.Devices.Enumeration .
Perhatikan bahwa profil pemasangan memasangkan dua alamat MAC, jadi membatalkan pemasangan dua perangkat berlaku untuk semua aplikasi yang menggunakan Wi-Fi Direct di antara kedua perangkat tersebut. Aplikasi Anda tidak boleh berasumsi bahwa profil pemasangan ada, atau belum diubah oleh aplikasi lain, meskipun telah dipasangkan dengan perangkat di masa lalu. Anda harus mendapatkan informasi profil saat ini dari profil saat ini daripada menyimpan informasi profil dan dengan asumsi itu masih benar di kemudian hari. Aplikasi lain mungkin telah mengubah profil pemasangan secara sementara.
Kode berikut menemukan profil pemasangan Wi-Fi Direct antara perangkat lokal dan perangkat lain, dan membatalkan pemasangan kedua perangkat. Setelah kode ini berhasil membatalkan pemasangan kedua perangkat, pemasangan berikutnya akan mematuhi nilai WiFiDirectAdvertiser.PreferGroupOwnerMode aktif pada saat pemasangan.
using Windows.Devices.Enumeration;
private async void Unpair_Click(object sender, Windows.UI.Xaml.RoutedEventArgs e)
{
if (DiscoveredServices.Items.Count > 0)
{
DiscoveredDeviceWrapper service =
(DiscoveredDeviceWrapper)DiscoveredServices.Items[DiscoveredServices.SelectedIndex];
String[] aepId = service.DeviceInfo.Id.Split('#');
String deviceSelector = "System.Devices.DeviceInstanceId:=\"SWD\\WiFiDirect\\" + aepId[1] + "\"";
// Check if device is paired
DeviceInformationCollection pairedDeviceCollection =
await DeviceInformation.FindAllAsync(deviceSelector, null, DeviceInformationKind.DeviceInterface);
if (pairedDeviceCollection.Count > 0)
{
try
{
DeviceInformation devInfo = pairedDeviceCollection[0];
await devInfo.Pairing.UnpairAsync();
MainPage.Current.NotifyUser("UnpairAsync succeeded", NotifyType.StatusMessage);
}
catch (Exception ex)
{
MainPage.Current.NotifyUser("UnpairAsync failed: " + ex.Message, NotifyType.ErrorMessage);
}
}
}
}