Condividi tramite


ProximityDevice.PublishUriMessage Metodo

Definizione

Overload

PublishUriMessage(Uri)

Pubblica un URI (Uniform Resource Identifier) in un dispositivo di prossimità.

PublishUriMessage(Uri, MessageTransmittedHandler)

Pubblica un URI (Uniform Resource Identifier) in un dispositivo di prossimità. Il gestore specificato viene chiamato quando il messaggio è stato trasmesso.

PublishUriMessage(Uri)

Pubblica un URI (Uniform Resource Identifier) in un dispositivo di prossimità.

public:
 virtual long long PublishUriMessage(Uri ^ message) = PublishUriMessage;
/// [Windows.Foundation.Metadata.Overload("PublishUriMessage")]
long PublishUriMessage(Uri const& message);
[Windows.Foundation.Metadata.Overload("PublishUriMessage")]
public long PublishUriMessage(System.Uri message);
function publishUriMessage(message)
Public Function PublishUriMessage (message As Uri) As Long

Parametri

message
Uri Uri

URI da pubblicare.

Restituisce

Int64

long long

long

ID pubblicazione del messaggio.

Attributi

Requisiti Windows

Funzionalità dell'app
proximity ID_CAP_PROXIMITY [Windows Phone]

Esempio

private Windows.Networking.Proximity.ProximityDevice proximityDevice;
    
public MainPage()
{
    this.InitializeComponent();

    initializeProximitySample();
}

private void initializeProximitySample() 
{
    proximityDevice = Windows.Networking.Proximity.ProximityDevice.GetDefault();

    if (proximityDevice == null)
        WriteMessageText("Failed to initialized proximity device.\n" +
                         "Your device may not have proximity hardware.");
}

// 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;
        });
}
Private proximityDevice As Windows.Networking.Proximity.ProximityDevice

Public Sub New()
    Me.InitializeComponent()

    initializeProximitySample()
End Sub

Private Sub initializeProximitySample()
    proximityDevice = Windows.Networking.Proximity.ProximityDevice.GetDefault()

    If proximityDevice Is Nothing Then
        WriteMessageText("Failed to initialized proximity device." & vbCrLf &
                         "Your device may not have proximity hardware.")
    End If
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
long publishedUriId = -1;

private void PublishUriButton_Click(object sender, RoutedEventArgs e)
{
    // Stop publishing the current message.
    if (publishedUriId != -1)
        proximityDevice.StopPublishingMessage(publishedUriId);

    publishedUriId =
        proximityDevice.PublishUriMessage(new Uri("http://www.microsoft.com"));
}

private void StopPublishingUriButton_Click(object sender, RoutedEventArgs e)
{
    proximityDevice.StopPublishingMessage(publishedUriId);
}
Private publishedUriId As Long = -1

Private Sub PublishUriButton_Click(sender As Object, e As RoutedEventArgs)
    ' Stop publishing the current message.
    If publishedUriId <> -1 Then
        proximityDevice.StopPublishingMessage(publishedUriId)
    End If

    publishedUriId =
        proximityDevice.PublishUriMessage(New Uri("http:'www.microsoft.com"))
End Sub

Private Sub StopPublishingUriButton_Click()
    proximityDevice.StopPublishingMessage(publishedUriId)
End Sub

Commenti

È possibile pubblicare un solo URI alla volta per ogni dispositivo di prossimità.

È possibile interrompere la pubblicazione di un URI passando l'ID pubblicazione restituito dal metodo PublishUriMessage al metodo StopPublishingMessage .

A differenza degli altri metodi di pubblicazione per un dispositivo di prossimità, la pubblicazione dell'URI viene gestita dal gestore di protocollo predefinito per l'URI. Non è necessaria una sottoscrizione a una pubblicazione di messaggi URI. È possibile ricevere messaggi URI registrando un gestore predefinito per un protocollo URI, ad esempio il protocollo HTTP.

Il valore PackageFamilyName dell'applicazione di invio viene inviato automaticamente insieme all'URI. Se non viene registrato alcun gestore per il protocollo di un URI, il valore PackageFamilyName dell'applicazione di invio viene usato per indirizzare l'applicazione ricevente all'archivio applicazioni.

È possibile utilizzare il metodo PublishMessage per pubblicare un sms in un computer di prossimità. È possibile utilizzare il metodo PublishBinaryMessage per pubblicare messaggi o messaggi non di testo conformi allo standard di messaggistica NDEF.

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

Si applica a

PublishUriMessage(Uri, MessageTransmittedHandler)

Pubblica un URI (Uniform Resource Identifier) in un dispositivo di prossimità. Il gestore specificato viene chiamato quando il messaggio è stato trasmesso.

public:
 virtual long long PublishUriMessage(Uri ^ message, MessageTransmittedHandler ^ messageTransmittedHandler) = PublishUriMessage;
/// [Windows.Foundation.Metadata.Overload("PublishUriMessageWithCallback")]
long PublishUriMessage(Uri const& message, MessageTransmittedHandler const& messageTransmittedHandler);
[Windows.Foundation.Metadata.Overload("PublishUriMessageWithCallback")]
public long PublishUriMessage(System.Uri message, MessageTransmittedHandler messageTransmittedHandler);
function publishUriMessage(message, messageTransmittedHandler)
Public Function PublishUriMessage (message As Uri, messageTransmittedHandler As MessageTransmittedHandler) As Long

Parametri

message
Uri Uri

URI da pubblicare.

messageTransmittedHandler
MessageTransmittedHandler

Gestore da chiamare quando il messaggio è stato trasmesso.

Restituisce

Int64

long long

long

ID pubblicazione del messaggio.

Attributi

Requisiti Windows

Funzionalità dell'app
proximity ID_CAP_PROXIMITY [Windows Phone]

Esempio

private Windows.Networking.Proximity.ProximityDevice proximityDevice;
    
public MainPage()
{
    this.InitializeComponent();

    initializeProximitySample();
}

private void initializeProximitySample() 
{
    proximityDevice = Windows.Networking.Proximity.ProximityDevice.GetDefault();

    if (proximityDevice == null)
        WriteMessageText("Failed to initialized proximity device.\n" +
                         "Your device may not have proximity hardware.");
}

// 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;
        });
}
Private proximityDevice As Windows.Networking.Proximity.ProximityDevice

Public Sub New()
    Me.InitializeComponent()

    initializeProximitySample()
End Sub

Private Sub initializeProximitySample()
    proximityDevice = Windows.Networking.Proximity.ProximityDevice.GetDefault()

    If proximityDevice Is Nothing Then
        WriteMessageText("Failed to initialized proximity device." & vbCrLf &
                         "Your device may not have proximity hardware.")
    End If
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
    long publishedUriId = -1;

    private void PublishUriButton_Click(object sender, RoutedEventArgs e)
    {
        // Stop publishing the current message.
        if (publishedUriId != -1)
            proximityDevice.StopPublishingMessage(publishedUriId);

        publishedUriId =
            proximityDevice.PublishUriMessage(new Uri("http://www.microsoft.com"),
                                              UriTransmitted);
    }

private void UriTransmitted(
    Windows.Networking.Proximity.ProximityDevice sender,
        long messageId)
    {
    // The Uri has been successfully transmitted.
    }

    private void StopPublishingUriButton_Click(object sender, RoutedEventArgs e)
    {
        proximityDevice.StopPublishingMessage(publishedUriId);
    }
Private publishedUriId As Long = -1

Private Sub PublishUriButton_Click(sender As Object, e As RoutedEventArgs)
    ' Stop publishing the current message.
    If publishedUriId <> -1 Then
        proximityDevice.StopPublishingMessage(publishedUriId)
    End If

    publishedUriId =
        proximityDevice.PublishUriMessage(New Uri("http:'www.microsoft.com"),
                                          AddressOf UriTransmitted)
End Sub

Private Sub UriTransmitted(
sender As Windows.Networking.Proximity.ProximityDevice,
    messageId As Long)

' The Uri has been successfully transmitted
End Sub

Private Sub StopPublishingUriButton_Click()
    proximityDevice.StopPublishingMessage(publishedUriId)
End Sub

Commenti

È possibile pubblicare un solo URI alla volta per ogni dispositivo di prossimità.

È possibile interrompere la pubblicazione di un URI passando l'ID pubblicazione restituito dal metodo PublishUriMessage al metodo StopPublishingMessage .

A differenza degli altri metodi di pubblicazione per un dispositivo di prossimità, la pubblicazione dell'URI viene gestita dal gestore di protocollo predefinito per l'URI. Non è necessaria una sottoscrizione a una pubblicazione di messaggi URI. È possibile ricevere messaggi URI registrando un gestore predefinito per un protocollo URI, ad esempio il protocollo HTTP.

Il valore PackageFamilyName dell'applicazione di invio viene inviato automaticamente insieme all'URI. Se non viene registrato alcun gestore per il protocollo di un URI, il valore PackageFamilyName dell'applicazione di invio viene usato per indirizzare l'applicazione ricevente all'archivio applicazioni.

È possibile utilizzare il metodo PublishMessage per pubblicare un sms in un computer di prossimità. È possibile utilizzare il metodo PublishBinaryMessage per pubblicare messaggi o messaggi non di testo conformi allo standard di messaggistica NDEF.

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

Si applica a