ProximityDevice Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ermöglicht ihnen das Veröffentlichen von Nachrichten auf geräten oder das Abonnieren von Nachrichten von proximate-Geräten.
public ref class ProximityDevice sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class ProximityDevice final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class ProximityDevice
Public NotInheritable Class ProximityDevice
- Vererbung
- Attribute
Windows-Anforderungen
Gerätefamilie |
Windows 10 (eingeführt in 10.0.10240.0 - for Xbox, see UWP features that aren't yet supported on Xbox)
|
API contract |
Windows.Foundation.UniversalApiContract (eingeführt in v1.0)
|
App-Funktionen |
ID_CAP_PROXIMITY [Windows Phone]
proximity
ID_CAP_PROXIMITY [Windows Phone]
|
Beispiele
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
Hinweise
Die ProximityDevice-Klasse ermöglicht Anwendungen die Kommunikation mit ausgeführten Anwendungen auf Geräten, in der Regel in einem Bereich von 3 Zentimetern bis 4 Zentimetern.
Sie können eine instance von ProximityDevice erstellen, indem Sie die statische Methode GetDefault oder FromId verwenden.
Die ProximityDevice-Klasse verwendet Publish/Subscribe-Semantik und ist nützlich für die Werbung und den Empfang kleiner Datenblöcke. Verwenden Sie für größere Datenmengen oder für die dauerhafte Kommunikation die Klassen PeerFinder und StreamSocket . Für UWP-Apps sind Veröffentlichungen und Abonnements nur aktiv, wenn sich die aufrufende App im Vordergrund befindet.
Wichtig
Die Näherungs-APIs bieten keine Authentifizierung, Verschlüsselung oder Nachrichtenintegrität. Verwenden Sie die Nähe nicht, um vertrauliche Benutzerinformationen wie Kennwörter, Finanzdaten, TEXTnachrichten, E-Mails, Fotos oder Behörden-ID-Nummern auszutauschen.
Eigenschaften
BitsPerSecond |
Ruft die Übertragungsrate eines Näherungsgeräts ab. |
DeviceId |
Ruft die DeviceInformation-ID für ein Näherungsgerät ab. |
MaxMessageBytes |
Ruft die maximale Größe einer veröffentlichten Nachricht ab, die dieses Näherungsgerät unterstützt. |
Methoden
FromId(String) |
Erstellt eine instance einer ProximityDevice-Klasse und aktiviert die angegebene Näherungsgeräteschnittstelle. |
GetDefault() |
Erstellt eine instance einer ProximityDevice-Klasse und aktiviert den Standardnäheranbieter. |
GetDeviceSelector() |
Gibt die Klassenauswahlzeichenfolge zurück, mit der Sie Näherungsgeräte auflisten können. |
PublishBinaryMessage(String, IBuffer) |
Veröffentlicht für Abonnenten des angegebenen Nachrichtentyps eine Nachricht, die Binärdaten enthält. |
PublishBinaryMessage(String, IBuffer, MessageTransmittedHandler) |
Veröffentlicht eine Nachricht, die Binärdaten enthält, für Abonnenten des angegebenen Nachrichtentyps. Der angegebene Handler wird aufgerufen, wenn die Nachricht übertragen wurde. |
PublishMessage(String, String) |
Veröffentlicht eine Nachricht für Abonnenten des angegebenen Nachrichtentyps. |
PublishMessage(String, String, MessageTransmittedHandler) |
Veröffentlicht eine Nachricht für Abonnenten des angegebenen Nachrichtentyps. Der angegebene Handler wird aufgerufen, wenn die Nachricht übertragen wurde. |
PublishUriMessage(Uri) |
Veröffentlicht einen Uniform Resource Identifier (URI) auf einem proximate-Gerät. |
PublishUriMessage(Uri, MessageTransmittedHandler) |
Veröffentlicht einen Uniform Resource Identifier (URI) auf einem proximate-Gerät. Der angegebene Handler wird aufgerufen, wenn die Nachricht übertragen wurde. |
StopPublishingMessage(Int64) |
Beendet die Veröffentlichung einer Nachricht. |
StopSubscribingForMessage(Int64) |
Gekündigt ein Nachrichtenabonnement. |
SubscribeForMessage(String, MessageReceivedHandler) |
Erstellt ein Abonnement für einen angegebenen Nachrichtentyp. |
Ereignisse
DeviceArrived |
Tritt auf, wenn ein Gerät in den Proximatbereich wechselt. |
DeviceDeparted |
Tritt auf, wenn ein Gerät den proximaten Bereich verlässt. |