ProximityDevice Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Permite publicar mensajes en dispositivos proxy o suscribirse a mensajes de dispositivos proxy.
public ref class ProximityDevice sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class ProximityDevice final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class ProximityDevice
Public NotInheritable Class ProximityDevice
- Herencia
- Atributos
Requisitos de Windows
Familia de dispositivos |
Windows 10 (se introdujo en la versión 10.0.10240.0 - for Xbox, see UWP features that aren't yet supported on Xbox)
|
API contract |
Windows.Foundation.UniversalApiContract (se introdujo en la versión v1.0)
|
Características de aplicaciones |
ID_CAP_PROXIMITY [Windows Phone]
proximity
ID_CAP_PROXIMITY [Windows Phone]
|
Ejemplos
Windows.Networking.Proximity.ProximityDevice proximityDevice;
private void InitializeProximityDevice()
{
proximityDevice = Windows.Networking.Proximity.ProximityDevice.GetDefault();
if (proximityDevice != null) {
proximityDevice.DeviceArrived += ProximityDeviceArrived;
proximityDevice.DeviceDeparted += ProximityDeviceDeparted;
WriteMessageText("Proximity device initialized.\n");
}
else
{
WriteMessageText("Failed to initialized proximity device.\n");
}
}
private void ProximityDeviceArrived(Windows.Networking.Proximity.ProximityDevice device)
{
WriteMessageText("Proximate device arrived. id = " + device.DeviceId + "\n");
}
private void ProximityDeviceDeparted(Windows.Networking.Proximity.ProximityDevice device)
{
WriteMessageText("Proximate device departed. id = " + device.DeviceId + "\n");
}
// Write a message to MessageBlock on the UI thread.
private Windows.UI.Core.CoreDispatcher messageDispatcher = Window.Current.CoreWindow.Dispatcher;
async private void WriteMessageText(string message, bool overwrite = false)
{
await messageDispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal,
() =>
{
if (overwrite)
MessageBlock.Text = message;
else
MessageBlock.Text += message;
});
}
Dim proximityDevice As Windows.Networking.Proximity.ProximityDevice
Private Sub InitializeProximityDevice()
proximityDevice = Windows.Networking.Proximity.ProximityDevice.GetDefault()
If proximityDevice IsNot Nothing Then
AddHandler proximityDevice.DeviceArrived, AddressOf ProximityDeviceArrived
AddHandler proximityDevice.DeviceDeparted, AddressOf ProximityDeviceDeparted
WriteMessageText("Proximity device initialized." & vbTab)
Else
WriteMessageText("Failed to initialized proximity device." & vbTab)
End If
End Sub
Private Sub ProximityDeviceArrived(device As Windows.Networking.Proximity.ProximityDevice)
WriteMessageText("Proximate device arrived. id = " & device.DeviceId & vbTab)
End Sub
Private Sub ProximityDeviceDeparted(device As Windows.Networking.Proximity.ProximityDevice)
WriteMessageText("Proximate device departed. id = " & device.DeviceId & vbTab)
End Sub
' Write a message to MessageBlock on the UI thread.
Private Async Sub WriteMessageText(message As String, Optional overwrite As Boolean = False)
Await Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal,
Sub()
If overwrite Then
MessageBlock.Text = message
Else
MessageBlock.Text &= message
End If
End Sub)
End Sub
Comentarios
La clase ProximityDevice permite a las aplicaciones comunicarse con aplicaciones en ejecución en dispositivos, normalmente dentro de un intervalo de 3 centímetros a 4 centímetros.
Puede crear una instancia de ProximityDevice mediante el método estático GetDefault o FromId .
La clase ProximityDevice usa la semántica de publicación y suscripción y es útil para anunciar y recibir pequeños bloques de datos. Para grandes cantidades de datos, o para las comunicaciones persistentes, use las clases PeerFinder y StreamSocket . En el caso de las aplicaciones para UWP, las publicaciones y las suscripciones solo están activas si la aplicación que realiza la llamada está en primer plano.
Importante
Las API de proximidad no proporcionan autenticación, cifrado ni integridad de mensajes. No use la proximidad para intercambiar información confidencial del usuario, como contraseñas, datos financieros, mensajes de texto, correo electrónico, fotografías o números de identificación gubernamentales.
Propiedades
BitsPerSecond |
Obtiene la velocidad de transferencia de un dispositivo de proximidad. |
DeviceId |
Obtiene el identificador deviceInformation de un dispositivo de proximidad. |
MaxMessageBytes |
Obtiene el tamaño máximo de un mensaje publicado que admite este dispositivo de proximidad. |
Métodos
FromId(String) |
Crea una instancia de una clase ProximityDevice y activa la interfaz de dispositivo de proximidad especificada. |
GetDefault() |
Crea una instancia de una clase ProximityDevice y activa el proveedor de proximidad predeterminado. |
GetDeviceSelector() |
Devuelve la cadena de selección de clase que puede usar para enumerar los dispositivos de proximidad. |
PublishBinaryMessage(String, IBuffer) |
Publica en los suscriptores del tipo de mensaje especificado un mensaje que contiene datos binarios. |
PublishBinaryMessage(String, IBuffer, MessageTransmittedHandler) |
Publica un mensaje que contiene datos binarios a los suscriptores del tipo de mensaje especificado. Se llama al controlador especificado cuando se ha transmitido el mensaje. |
PublishMessage(String, String) |
Publica un mensaje a los suscriptores del tipo de mensaje especificado. |
PublishMessage(String, String, MessageTransmittedHandler) |
Publica un mensaje a los suscriptores del tipo de mensaje especificado. Se llama al controlador especificado cuando se ha transmitido el mensaje. |
PublishUriMessage(Uri) |
Publica un identificador uniforme de recursos (URI) en un dispositivo proxy. |
PublishUriMessage(Uri, MessageTransmittedHandler) |
Publica un identificador uniforme de recursos (URI) en un dispositivo proxy. Se llama al controlador especificado cuando se ha transmitido el mensaje. |
StopPublishingMessage(Int64) |
Detiene la publicación de un mensaje. |
StopSubscribingForMessage(Int64) |
Cancela una suscripción de mensaje. |
SubscribeForMessage(String, MessageReceivedHandler) |
Crea una suscripción para un tipo de mensaje especificado. |
Eventos
DeviceArrived |
Se produce cuando un dispositivo entra en el intervalo de servidores proxy. |
DeviceDeparted |
Se produce cuando un dispositivo sale del intervalo de servidores proxy. |