Windows.Networking.Proximity
Windows.Networking.Proximity
Windows.Networking.Proximity
Windows.Networking.Proximity
Namespace
Contains classes that support connections between devices that are within close range.
Classes
| ConnectionRequestedEventArgs ConnectionRequestedEventArgs ConnectionRequestedEventArgs ConnectionRequestedEventArgs |
Contains properties that are passed to an application with the ConnectionRequested event. |
| PeerFinder PeerFinder PeerFinder PeerFinder |
Enables you to discover other instances of your app on nearby devices and create a socket connection between the peer apps by using a tap gesture or by browsing. For creating Bluetooth socket connections on Windows 8.1 and later, use Windows.Devices.Bluetooth.Rfcomm instead. |
| PeerInformation PeerInformation PeerInformation PeerInformation |
Contains information that identifies a peer. |
| PeerWatcher PeerWatcher PeerWatcher PeerWatcher |
Dynamically discovers peer apps within wireless range. |
| ProximityDevice ProximityDevice ProximityDevice ProximityDevice |
Enables you to publish messages to proximate devices or subscribe to messages from proximate devices. |
| ProximityMessage ProximityMessage ProximityMessage ProximityMessage |
Represents a message that's received from a subscription. |
| TriggeredConnectionStateChangedEventArgs TriggeredConnectionStateChangedEventArgs TriggeredConnectionStateChangedEventArgs TriggeredConnectionStateChangedEventArgs |
Contains properties that the TriggeredConnectionStateChanged event passes to an application. |
Enums
| PeerDiscoveryTypes PeerDiscoveryTypes PeerDiscoveryTypes PeerDiscoveryTypes |
Indicates which discovery options are available to use with the PeerFinder class. |
| PeerRole PeerRole PeerRole PeerRole |
Describes the role of the peer app when connected to multiple peers. |
| PeerWatcherStatus PeerWatcherStatus PeerWatcherStatus PeerWatcherStatus |
Describes the status of a PeerWatcher object. |
| TriggeredConnectState TriggeredConnectState TriggeredConnectState TriggeredConnectState |
Indicates the current state of a connection to a peer application. |
Delegates
| DeviceArrivedEventHandler DeviceArrivedEventHandler DeviceArrivedEventHandler DeviceArrivedEventHandler |
Describes the method that handles the DeviceArrived event. |
| DeviceDepartedEventHandler DeviceDepartedEventHandler DeviceDepartedEventHandler DeviceDepartedEventHandler |
Describes the method that handles the DeviceDeparted event. |
| MessageReceivedHandler MessageReceivedHandler MessageReceivedHandler MessageReceivedHandler |
Describes the method that will handle the event that's fired when a message that has been subscribed to has been received. |
| MessageTransmittedHandler MessageTransmittedHandler MessageTransmittedHandler MessageTransmittedHandler |
Describes the method that will handle the event that's fired when a published message has been transmitted. |
Examples
This example shows how you can use the ProximityDevice class to determine when a device enters and leaves proximity.
<<<<<<< HEAD
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;
});
}
function id(elementId) {
return document.getElementById(elementId);
}
var proximityDevice;
function initializeProximityDevice() {
proximityDevice = Windows.Networking.Proximity.ProximityDevice.getDefault();
if (proximityDevice) {
proximityDevice.addEventListener("devicearrived", proximityDeviceArrived);
proximityDevice.addEventListener("devicedeparted", proximityDeviceDeparted);
id("messageDiv").innerHTML += "Proximity device initialized.<br />";
}
else {
id("messageDiv").innerHTML += "Failed to initialized proximity device.<br />";
}
}
function proximityDeviceArrived(device) {
id("messageDiv").innerHTML += "Proximate device arrived. id = " + device.deviceId + "<br />";
}
function proximityDeviceDeparted(device) {
id("messageDiv").innerHTML += "Proximate device departed. id = " + device.deviceId + "<br />";
}
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
=======
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;
});
}
function id(elementId) {
return document.getElementById(elementId);
}
var proximityDevice;
function initializeProximityDevice() {
proximityDevice = Windows.Networking.Proximity.ProximityDevice.getDefault();
if (proximityDevice) {
proximityDevice.addEventListener("devicearrived", proximityDeviceArrived);
proximityDevice.addEventListener("devicedeparted", proximityDeviceDeparted);
id("messageDiv").innerHTML += "Proximity device initialized.<br />";
}
else {
id("messageDiv").innerHTML += "Failed to initialized proximity device.<br />";
}
}
function proximityDeviceArrived(device) {
id("messageDiv").innerHTML += "Proximate device arrived. id = " + device.deviceId + "<br />";
}
function proximityDeviceDeparted(device) {
id("messageDiv").innerHTML += "Proximate device departed. id = " + device.deviceId + "<br />";
}
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
master
Remarks
You can use proximity to connect computers by using a simple tap gesture. If two computers come within 3 centimeters to 4 centimeters of each other, or are tapped together, the operating system of each computer detects the other computer. You can then connect the two computers to share content or publish and subscribe to messages. Proximity also supports discovery of peer devices via Wi-Fi Direct.
Important
The proximity APIs do not provide authentication, encryption, or message integrity. Do not use proximity to exchange user sensitive information such as passwords, financial data, text messages, email, photographs, or government id numbers.