Partager via


ProximityDevice.PublishUriMessage Méthode

Définition

Surcharges

PublishUriMessage(Uri)

Publie un URI (Uniform Resource Identifier) sur un appareil proche.

PublishUriMessage(Uri, MessageTransmittedHandler)

Publie un URI (Uniform Resource Identifier) sur un appareil proche. Le gestionnaire spécifié est appelé lorsque le message a été transmis.

PublishUriMessage(Uri)

Publie un URI (Uniform Resource Identifier) sur un appareil proche.

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

Paramètres

message
Uri Uri

URI à publier.

Retours

Int64

long long

long

ID de publication du message.

Attributs

Configuration requise pour Windows

Fonctionnalités de l’application
proximity ID_CAP_PROXIMITY [Windows Phone]

Exemples

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

Remarques

Un seul URI peut être publié à la fois pour chaque appareil de proximité.

Vous pouvez arrêter la publication d’un URI en transmettant l’ID de publication retourné par la méthode PublishUriMessage à la méthode StopPublishingMessage .

Contrairement aux autres méthodes de publication d’un appareil de proximité, la publication d’URI est gérée par le gestionnaire de protocole par défaut pour l’URI. Un abonnement à une publication de message URI n’est pas requis. Vous pouvez recevoir des messages URI en inscrivant un gestionnaire par défaut pour un protocole URI tel que le protocole HTTP.

La valeur PackageFamilyName de l’application émettrice est envoyée automatiquement avec l’URI. Si aucun gestionnaire n’est inscrit pour le protocole d’un URI, la valeur PackageFamilyName de l’application émettrice est utilisée pour diriger l’application réceptrice vers le magasin d’applications.

Vous pouvez utiliser la méthode PublishMessage pour publier un message texte sur un ordinateur proche. Vous pouvez utiliser la méthode PublishBinaryMessage pour publier des messages non textuels ou conformes à la norme de messagerie NDEF.

Important

Les API de proximité ne fournissent pas d’authentification, de chiffrement ou d’intégrité des messages. N’utilisez pas la proximité pour échanger des informations sensibles sur les utilisateurs, telles que des mots de passe, des données financières, des messages texte, des e-mails, des photographies ou des numéros d’identification gouvernementaux.

Voir aussi

S’applique à

PublishUriMessage(Uri, MessageTransmittedHandler)

Publie un URI (Uniform Resource Identifier) sur un appareil proche. Le gestionnaire spécifié est appelé lorsque le message a été transmis.

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

Paramètres

message
Uri Uri

URI à publier.

messageTransmittedHandler
MessageTransmittedHandler

Gestionnaire à appeler lorsque le message a été transmis.

Retours

Int64

long long

long

ID de publication du message.

Attributs

Configuration requise pour Windows

Fonctionnalités de l’application
proximity ID_CAP_PROXIMITY [Windows Phone]

Exemples

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

Remarques

Un seul URI peut être publié à la fois pour chaque appareil de proximité.

Vous pouvez arrêter la publication d’un URI en transmettant l’ID de publication retourné par la méthode PublishUriMessage à la méthode StopPublishingMessage .

Contrairement aux autres méthodes de publication d’un appareil de proximité, la publication d’URI est gérée par le gestionnaire de protocole par défaut pour l’URI. Un abonnement à une publication de message URI n’est pas requis. Vous pouvez recevoir des messages URI en inscrivant un gestionnaire par défaut pour un protocole URI tel que le protocole HTTP.

La valeur PackageFamilyName de l’application émettrice est envoyée automatiquement avec l’URI. Si aucun gestionnaire n’est inscrit pour le protocole d’un URI, la valeur PackageFamilyName de l’application émettrice est utilisée pour diriger l’application réceptrice vers le magasin d’applications.

Vous pouvez utiliser la méthode PublishMessage pour publier un message texte sur un ordinateur proche. Vous pouvez utiliser la méthode PublishBinaryMessage pour publier des messages non textuels ou conformes à la norme de messagerie NDEF.

Important

Les API de proximité ne fournissent pas d’authentification, de chiffrement ou d’intégrité des messages. N’utilisez pas la proximité pour échanger des informations sensibles sur les utilisateurs, telles que des mots de passe, des données financières, des messages texte, des e-mails, des photographies ou des numéros d’identification gouvernementaux.

Voir aussi

S’applique à