ProximityDevice.PublishUriMessage Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Sobrecargas
PublishUriMessage(Uri) |
Publica um URI (Uniform Resource Identifier) em um dispositivo próximo. |
PublishUriMessage(Uri, MessageTransmittedHandler) |
Publica um URI (Uniform Resource Identifier) em um dispositivo próximo. O manipulador especificado é chamado quando a mensagem é transmitida. |
PublishUriMessage(Uri)
Publica um URI (Uniform Resource Identifier) em um dispositivo próximo.
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
Parâmetros
Retornos
A ID da publicação da mensagem.
- Atributos
Requisitos do Windows
Funcionalidades do aplicativo |
proximity
ID_CAP_PROXIMITY [Windows Phone]
|
Exemplos
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
Comentários
Somente um URI pode ser publicado por vez para cada dispositivo de proximidade.
Você pode parar de publicar um URI passando a ID de publicação retornada pelo método PublishUriMessage para o método StopPublishingMessage .
Ao contrário dos outros métodos de publicação para um dispositivo de proximidade, a publicação de URI é tratada pelo manipulador de protocolo padrão para o URI. Uma assinatura de uma publicação de mensagem de URI não é necessária. Você pode receber mensagens de URI registrando um manipulador padrão para um protocolo URI, como o protocolo HTTP.
O valor PackageFamilyName do aplicativo de envio é enviado automaticamente junto com o URI. Se nenhum manipulador for registrado para o protocolo de um URI, o valor PackageFamilyName do aplicativo de envio será usado para direcionar o aplicativo receptor para o repositório de aplicativos.
Você pode usar o método PublishMessage para publicar uma mensagem de texto em um computador próximo. Você pode usar o método PublishBinaryMessage para publicar mensagens não textuais ou mensagens que estejam em conformidade com o padrão de mensagens NDEF.
Importante
As APIs de proximidade não fornecem autenticação, criptografia ou integridade da mensagem. Não use proximidade para trocar informações confidenciais do usuário, como senhas, dados financeiros, mensagens de texto, email, fotografias ou números de ID do governo.
Confira também
- PublishUriMessage(Uri, MessageTransmittedHandler)
- Proximidade e toque (C#/VB/C++)
- Exemplo de proximidade
Aplica-se a
PublishUriMessage(Uri, MessageTransmittedHandler)
Publica um URI (Uniform Resource Identifier) em um dispositivo próximo. O manipulador especificado é chamado quando a mensagem é transmitida.
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
Parâmetros
- messageTransmittedHandler
- MessageTransmittedHandler
O manipulador a ser chamado quando a mensagem tiver sido transmitida.
Retornos
A ID da publicação da mensagem.
- Atributos
Requisitos do Windows
Funcionalidades do aplicativo |
proximity
ID_CAP_PROXIMITY [Windows Phone]
|
Exemplos
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
Comentários
Somente um URI pode ser publicado por vez para cada dispositivo de proximidade.
Você pode parar de publicar um URI passando a ID de publicação retornada pelo método PublishUriMessage para o método StopPublishingMessage .
Ao contrário dos outros métodos de publicação para um dispositivo de proximidade, a publicação de URI é tratada pelo manipulador de protocolo padrão para o URI. Uma assinatura de uma publicação de mensagem de URI não é necessária. Você pode receber mensagens de URI registrando um manipulador padrão para um protocolo URI, como o protocolo HTTP.
O valor PackageFamilyName do aplicativo de envio é enviado automaticamente junto com o URI. Se nenhum manipulador for registrado para o protocolo de um URI, o valor PackageFamilyName do aplicativo de envio será usado para direcionar o aplicativo receptor para o repositório de aplicativos.
Você pode usar o método PublishMessage para publicar uma mensagem de texto em um computador próximo. Você pode usar o método PublishBinaryMessage para publicar mensagens não textuais ou mensagens que estejam em conformidade com o padrão de mensagens NDEF.
Importante
As APIs de proximidade não fornecem autenticação, criptografia ou integridade da mensagem. Não use proximidade para trocar informações confidenciais do usuário, como senhas, dados financeiros, mensagens de texto, email, fotografias ou números de ID do governo.