Condividi tramite


Windows.Networking.Proximity Spazio dei nomi

Contiene classi che supportano le connessioni tra dispositivi che si trovano all'interno di un intervallo di chiusura.

Classi

ConnectionRequestedEventArgs

Contiene proprietà passate a un'applicazione con l'evento ConnectionRequested .

PeerFinder

Consente di individuare altre istanze dell'app nei dispositivi vicini e di creare una connessione socket tra le app peer usando un movimento di tocco o l'esplorazione. Per creare connessioni socket Bluetooth in Windows 8.1 e versioni successive, usare invece Windows.Devices.Bluetooth.Rfcomm.

PeerInformation

Contiene informazioni che identificano un peer.

PeerWatcher

Individua in modo dinamico le app peer all'interno dell'intervallo wireless.

ProximityDevice

Consente di pubblicare messaggi in dispositivi prossimi o sottoscrivere messaggi da dispositivi prossimi.

ProximityMessage

Rappresenta un messaggio ricevuto da una sottoscrizione.

TriggeredConnectionStateChangedEventArgs

Contiene le proprietà passate dall'evento TriggeredConnectionStateChanged a un'applicazione.

Enumerazioni

PeerDiscoveryTypes

Indica le opzioni di individuazione disponibili per l'uso con la classe PeerFinder .

PeerRole

Descrive il ruolo dell'app peer quando si è connessi a più peer.

PeerWatcherStatus

Descrive lo stato di un oggetto PeerWatcher .

TriggeredConnectState

Indica lo stato corrente di una connessione a un'applicazione peer.

Delegati

DeviceArrivedEventHandler

Descrive il metodo che gestisce l'evento DeviceArrived .

DeviceDepartedEventHandler

Descrive il metodo che gestisce l'evento DeviceDeparted .

MessageReceivedHandler

Descrive il metodo che gestirà l'evento generato quando è stato ricevuto un messaggio sottoscritto.

MessageTransmittedHandler

Descrive il metodo che gestirà l'evento generato quando è stato trasmesso un messaggio pubblicato.

Esempio

Questo esempio mostra come usare la classe ProximityDevice per determinare quando un dispositivo entra e lascia la prossimità.

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

Commenti

È possibile usare la prossimità per connettere i computer usando un semplice gesto di tocco. Se due computer arrivano entro 3 centimetri l'uno dall'altro, o vengono toccati insieme, il sistema operativo di ogni computer rileva l'altro computer. È quindi possibile connettere i due computer per condividere il contenuto o pubblicare e sottoscrivere i messaggi. Prossimità supporta anche l'individuazione di dispositivi peer tramite Wi-Fi Direct.

Importante

Le API di prossimità non forniscono l'autenticazione, la crittografia o l'integrità dei messaggi. Non usare la prossimità per scambiare informazioni riservate degli utenti, ad esempio password, dati finanziari, sms, messaggi di posta elettronica, fotografie o numeri di ID per enti pubblici.

Vedi anche