ProximityDevice.PublishUriMessage メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
オーバーロード
PublishUriMessage(Uri) |
Uri (Uniform Resource Identifier) を近接デバイスに発行します。 |
PublishUriMessage(Uri, MessageTransmittedHandler) |
Uri (Uniform Resource Identifier) を近接デバイスに発行します。 指定されたハンドラーは、メッセージが送信されたときに呼び出されます。 |
PublishUriMessage(Uri)
Uri (Uniform Resource Identifier) を近接デバイスに発行します。
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
パラメーター
戻り値
メッセージのパブリケーション ID。
- 属性
Windows の要件
アプリの機能 |
proximity
ID_CAP_PROXIMITY [Windows Phone]
|
例
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
注釈
近接デバイスごとに一度に発行できる URI は 1 つだけです。
PublishUriMessage メソッドから返されたパブリケーション ID を StopPublishingMessage メソッドに渡すことで、URI の発行を停止できます。
近接デバイスの他の発行メソッドとは異なり、URI 発行は URI の既定のプロトコル ハンドラーによって処理されます。 URI メッセージ パブリケーションのサブスクリプションは必要ありません。 HTTP プロトコルなどの URI プロトコルの既定のハンドラーを登録することで、URI メッセージを受信できます。
送信側アプリケーションの PackageFamilyName 値は、URI と共に自動的に送信されます。 URI のプロトコルにハンドラーが登録されていない場合は、送信側アプリケーションの PackageFamilyName 値を使用して、受信側のアプリケーションをアプリケーション ストアに転送します。
PublishMessage メソッドを使用して、近接コンピューターにテキスト メッセージを発行できます。 PublishBinaryMessage メソッドを使用すると、NDEF メッセージング標準に準拠するテキスト以外のメッセージまたはメッセージを発行できます。
重要
近接 API では、認証、暗号化、またはメッセージの整合性は提供されません。 パスワード、財務データ、テキスト メッセージ、電子メール、写真、政府 ID 番号などのユーザーの機密情報を交換するために近接性を使用しないでください。
こちらもご覧ください
適用対象
PublishUriMessage(Uri, MessageTransmittedHandler)
Uri (Uniform Resource Identifier) を近接デバイスに発行します。 指定されたハンドラーは、メッセージが送信されたときに呼び出されます。
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
パラメーター
- messageTransmittedHandler
- MessageTransmittedHandler
メッセージが送信されたときに呼び出すハンドラー。
戻り値
メッセージのパブリケーション ID。
- 属性
Windows の要件
アプリの機能 |
proximity
ID_CAP_PROXIMITY [Windows Phone]
|
例
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
注釈
近接デバイスごとに一度に発行できる URI は 1 つだけです。
PublishUriMessage メソッドから返されたパブリケーション ID を StopPublishingMessage メソッドに渡すことで、URI の発行を停止できます。
近接デバイスの他の発行メソッドとは異なり、URI 発行は URI の既定のプロトコル ハンドラーによって処理されます。 URI メッセージ パブリケーションのサブスクリプションは必要ありません。 HTTP プロトコルなどの URI プロトコルの既定のハンドラーを登録することで、URI メッセージを受信できます。
送信側アプリケーションの PackageFamilyName 値は、URI と共に自動的に送信されます。 URI のプロトコルにハンドラーが登録されていない場合は、送信側アプリケーションの PackageFamilyName 値を使用して、受信側のアプリケーションをアプリケーション ストアに転送します。
PublishMessage メソッドを使用して、近接コンピューターにテキスト メッセージを発行できます。 PublishBinaryMessage メソッドを使用すると、NDEF メッセージング標準に準拠するテキスト以外のメッセージまたはメッセージを発行できます。
重要
近接 API では、認証、暗号化、またはメッセージの整合性は提供されません。 パスワード、財務データ、テキスト メッセージ、電子メール、写真、政府 ID 番号などのユーザーの機密情報を交換するために近接性を使用しないでください。