Windows.Devices.WiFiDirect.Services Espace de noms
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Important
Le Windows. L’espace de noms Devices.WiFiDirect.Services est déconseillé.
Fournit une prise en charge de l’implémentation de vos propres services direct Wi-Fi.
Wi-Fi Direct est une technologie qui permet à deux appareils de se connecter directement les uns aux autres à l’aide du Wi-Fi, sans avoir à joindre un réseau existant via un point d’accès. Wi-Fi Direct Services sont la façon dont un appareil ( annonceur de service) offre des fonctionnalités à un autre appareil ( un demandeur de services) via une connexion directe Wi-Fi. Un demandeur utilise un service publié en établissant une session. Un appareil donné peut publier plusieurs services et rechercher plusieurs services. Les rôles Demandeur et Annonceur sont définis en ce qui concerne la façon dont les appareils interagissent dans une session particulière.
Bien que la spécification Wi-Fi Direct Services définit plusieurs services standard, cette API prend uniquement en charge le service Enable . Elle ne prend pas en charge les fonctionnalités d’envoi, de lecture, d’impression ou d’affichage .
Classes
| Nom | Description |
|---|---|
| WiFiDirectService |
Important Le Windows. L’espace de noms Devices.WiFiDirect.Services est déconseillé. Représente un service direct Wi-Fi. Cette classe est utilisée par du code sur un appareil qui cherche à utiliser un service direct Wi-Fi, pour établir une session de service direct Wi-Fi avec le fournisseur de services. |
| WiFiDirectServiceAdvertiser |
Deprecated. Représente un annonceur de service. Cette classe est utilisée par du code sur un appareil qui publie Wi-Fi Direct Services, pour publier le service. |
| WiFiDirectServiceAutoAcceptSessionConnectedEventArgs |
Deprecated. Retourné lorsqu’un événement WiFiDirectServiceAdvertiser.AutoAcceptSessionConnected est déclenché. |
| WiFiDirectServiceProvisioningInfo |
Deprecated. Contient des informations d’approvisionnement sur un service direct Wi-Fi. |
| WiFiDirectServiceRemotePortAddedEventArgs |
Deprecated. Retourné lorsqu’un événement WiFiDirectServiceSession.RemotePortAdded est déclenché. Votre gestionnaire d’événements doit utiliser ces informations pour établir de nouvelles connexions de socket au nouveau port. |
| WiFiDirectServiceSession |
Deprecated. Représente une session Wi-Fi Direct Services (WFDS). |
| WiFiDirectServiceSessionDeferredEventArgs |
Deprecated. Retourné lorsqu’un événement WiFiDirectService.SessionDeferred est déclenché. |
| WiFiDirectServiceSessionRequest |
Deprecated. Décrit une demande de session de service direct Wi-Fi. |
| WiFiDirectServiceSessionRequestedEventArgs |
Deprecated. Retourné lorsqu’un événement WiFiDirectServiceAdvertiser.SessionRequested est déclenché. |
Énumérations
| Nom | Description |
|---|---|
| WiFiDirectServiceAdvertisementStatus |
Deprecated. Valeurs utilisées pour WiFiDirectServiceAdvertiser.AdvertisementStatus. |
| WiFiDirectServiceConfigurationMethod |
Deprecated. Valeurs décrivant la façon dont la configuration du service est effectuée lorsqu’une session est établie. En règle générale, aucune entrée n’est requise, ou un appareil de la session affiche un code confidentiel et l’autre appareil exige que le code confidentiel soit entré. |
| WiFiDirectServiceError |
Deprecated. Valeurs utilisées pour la propriété WiFiDirectServiceAdvertiser.ServiceError . |
| WiFiDirectServiceIPProtocol |
Deprecated. Définit des constantes qui spécifient le protocole IP du nouveau port lorsqu’un événement WiFiDirectServiceSession.RemotePortAdded est déclenché. |
| WiFiDirectServiceSessionErrorStatus |
Deprecated. Valeurs utilisées dans la propriété WiFiDirectServiceSession.ErrorStatus . |
| WiFiDirectServiceSessionStatus |
Deprecated. Valeurs utilisées pour décrire l’état d’une session de service direct Wi-Fi. |
| WiFiDirectServiceStatus |
Deprecated. Valeurs utilisées pour décrire l’état du service. |
Remarques
Définition du propriétaire du groupe (GO)
Vous pouvez être en mesure d’exercer un contrôle précis sur les membres d’un groupe P2P (Peer to Peer) est le propriétaire du groupe (GO). Votre code doit utiliser la propriété WiFiDirectAdvertiser.PreferGroupOwnerMode pour spécifier qu’un annonceur donné souhaite être go. Toutefois, si deux appareils ont été précédemment jumelés via Wi-Fi Direct, le Wi-Fi rôles directs dans le profil enregistré à partir de ce jumelage remplacent la préférence spécifiée par l’annonceur. Pour garantir qu’un appareil donné dans un appairage P2P sera go, vous devez d’abord supprimer toutes les données de jumelage existantes, à l’aide de méthodes fournies par le Windows. Devices.Enumeration espace de noms.
Notez qu’un profil d’appairage associe deux adresses MAC. Par conséquent, le fait de supprimer deux appareils s’applique à toutes les applications qui utilisent Wi-Fi Direct entre ces deux appareils. Votre application ne doit jamais supposer qu’un profil de jumelage existe ou qu’il n’a pas été modifié par une autre application, même s’il a associé un appareil par le passé. Vous devez obtenir les informations de profil actuelles à partir du profil actuel plutôt que de stocker les informations de profil et en supposant qu’elles sont toujours vraies à une date ultérieure. Une autre application a peut-être modifié le profil de jumelage dans l’intermédiaire.
Le code suivant recherche n’importe quel profil d’appairage direct Wi-Fi entre l’appareil local et un autre appareil, et désactive les deux appareils. Une fois que ce code a correctement désapprouvé les deux appareils, le jumelage suivant obéit à la valeur WiFiDirectAdvertiser.PreferGroupOwnerMode active au moment du jumelage.
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);
}
}
}
}