Auswählen des richtigen Kanaltypen für die PushbenachrichtigungenChoosing the right push notification channel type

In diesem Artikel werden die drei Arten von Windows-pushbenachrichtigungskanälen (primär, Sekundär und Alternative) erläutert, die Sie bei der Bereitstellung von Inhalten für Ihre APP unterstützen.This article covers the three types of Windows push notification channels (primary, secondary, and alternate) that help you deliver content to your app.

(Ausführliche Informationen zum Erstellen von Pushbenachrichtigungen finden Sie in der Übersicht über Windows Push Notification Services (WNS).)(For details on how to create push notifications, see the Windows Push Notification Services (WNS) overview.)

Typen von Push-KanälenTypes of push channels

Es gibt drei Arten von Push-Kanälen, die zum Senden von Benachrichtigungen an eine Windows-App verwendet werden können.There are three types of push channels that can be used to send notifications to a Windows app. Sie lauten wie folgt:They are:

Primärer Kanal : der "herkömmliche" pushkanal.Primary channel - the "traditional" push channel. Kann von jeder App im Store verwendet werden, um Popup-, Kachel-, RAW-oder Badge-Benachrichtigungen zu senden.Can be used by any app in the store to send toast, tile, raw, or badge notifications. Hier erhalten Sie weitere Informationen.Learn more here.

Sekundärer Kachel Kanal : wird zum Übertragung von Kachel Aktualisierungen auf eine sekundäre Kachel verwendet.Secondary tile channel - used to push tile updates to a secondary tile. Kann nur zum Senden von Kachel-oder Badge-Benachrichtigungen an eine sekundäre Kachel verwendet werden, die auf dem Startbildschirm des Benutzers fixiert ist.Can only be used to send tile or badge notifications to a secondary tile pinned on the user's start screen

Alternativer Kanal : ein neuer Kanaltyp, der in der Creators Aktualisierung hinzugefügt wird.Alternate channel - A new type of channel added in the Creators Update. Dadurch können unformatierte Benachrichtigungen an jede Windows-App gesendet werden, einschließlich derjenigen, die nicht im Store registriert sind.It allows for raw notifications to be sent to any Windows app, including those which aren't registered in the Store.

Hinweis

Unabhängig davon, welcher pushkanal Sie verwenden, ist es immer möglich, lokale Popup-, Kachel-oder Badge-Benachrichtigungen zu senden, sobald die APP auf dem Gerät ausgeführt wird.No matter which push channel you use, once your app is running on the device, it will always be able to send local toast, tile, or badge notifications. Sie kann lokale Benachrichtigungen von den Vorgängen der Vordergrund-APP oder von einer Hintergrundaufgabe senden.It can send local notifications from the foreground app processes or from a background task.

Primäre KanälePrimary channels

Dies sind derzeit die am häufigsten verwendeten Kanäle unter Windows, die für nahezu jedes Szenario geeignet sind, in dem Ihre APP über die Microsoft Store verteilt wird.These are the most commonly used channels on Windows right now, and are good for almost any scenario where your app is going to be distributed through the Microsoft Store. Sie ermöglichen es Ihnen, alle Arten von Benachrichtigungen an die APP zu senden.They allow you to send all types of notifications to the app.

Was aktivieren primäre Kanäle?What do primary channels enable?

  • Das Senden von Kachel-oder Badge-Aktualisierungen an die primäre Kachel.Sending tile or badge updates to the primary tile. Wenn der Benutzer die Kachel an den Startbildschirm angeheftet hat, können Sie diese anzeigen.If the user has chosen to pin your tile to the start screen, this is your chance to show off. Senden Sie Updates mit nützlichen Informationen oder Erinnerungen in der app.Send updates with useful information or reminders of experiences within your app.
  • Popup Benachrichtigungen werden gesendet.Sending toast notifications. Popup Benachrichtigungen sind die Möglichkeit, sofort vor dem Benutzer einige Informationen zu erhalten.Toast notifications are a chance to get some information in front of the user immediately. Sie werden von der Shell über den meisten apps gezeichnet und befinden sich im Aktions Center, sodass der Benutzer später wieder interagieren kann.They are painted by the shell over top of most apps, and live in the action center so the user can go back and interact with them later.
  • Senden von unformatierten Benachrichtigungen, um eine Hintergrundaufgabe zu initiieren.Sending raw notifications to trigger a background task. Manchmal möchten Sie im Namen des Benutzers auf der Grundlage einer Benachrichtigung einige Aufgaben durchführen.Sometimes you want to do some work on behalf of the user based on a notification. Mit unformatierten Benachrichtigungen können die Hintergrundaufgaben ihrer app ausgeführt werden.Raw notifications allow your app's background tasks to run
  • Nachrichten Verschlüsselung während der Übertragung wird von Windows mithilfe von TLS bereitgestellt.Message encryption in transit provided by Windows using TLS. Nachrichten werden über das Netzwerk verschlüsselt und werden auf das Gerät des Benutzers übertragen.Messages are encrypted on the wire both coming into WNS and going to the user's device.

Einschränkungen von primären KanälenLimitations of primary channels

  • Erfordert die Verwendung der WNS-Rest-API für Pushbenachrichtigungen, bei denen es sich nicht um Standardgeräte Anbieter handelt.Requires using the WNS REST API to push notifications, which isn't standard across device vendors.
  • Pro App kann nur ein Kanal erstellt werden.Only one channel can be created per app
  • Erfordert die Registrierung Ihrer APP im Microsoft StoreRequires your app to be registered in the Microsoft Store

Erstellen eines primären KanalsCreating a primary channel

PushNotificationChannel channel = 
    await PushNotificationChannelManager.CreatePushNotificationChannelForApplicationAsync();

Sekundäre Kachel KanäleSecondary tile channels

Hierbei handelt es sich um Kanäle, mit denen Kachel-und Signal Aktualisierungen per Push an eine sekundäre Kachel über gestellt werden können.These are channels that can be used to push tile and badge updates to a secondary tile. Diese werden von apps verwendet, um Benutzer über interessante Aktionen oder Informationen zu benachrichtigen, mit denen Sie in der APP interagieren können, wie z. b. neue Nachrichten in einem Gruppenchat oder eine aktualisierte Sport Bewertung.These are used by apps to notify users of interesting actions or information that they can interact with in the app, such as new messages in a group chat or an updated sports score.

Was aktivieren sekundäre Kachel Kanäle?What do secondary tile channels enable?

  • Senden von Kachel-oder Badge-Benachrichtigungen an sekundäre Kacheln.Sending tile or badge notifications to secondary tiles. Sekundäre Kacheln sind eine gute Möglichkeit, um Benutzer zurück in Ihre APP zu ziehen.Secondary tiles are a great way to pull users back into your app. Dabei handelt es sich um einen Deep-Link zu Informationen, die Sie interessieren, und das Platzieren relevanter Informationen auf den Kacheln hilft Ihnen, Sie wieder und wieder zu wiederholen.They are a deep link to information they care about, and putting relevant information on the tiles helps to bring them back again and again.
  • Trennung von Kanälen (und Abläufen) zwischen verschiedenen Kacheln.Separation of channels (and expiries) between various tiles. Auf diese Weise können Sie die Logik im Backend zwischen den verschiedenen Typen von sekundären Kacheln trennen, die ein Benutzer an den Startbildschirm anheften kann.This allows you to separate the logic in the backend between the various types of secondary tiles that a user might pin to their start screen.
  • Nachrichten Verschlüsselung während der Übertragung wird von Windows mithilfe von TLS bereitgestellt.Message encryption in transit provided by Windows using TLS. Nachrichten werden über das Netzwerk verschlüsselt und werden auf das Gerät des Benutzers übertragen.Messages are encrypted on the wire both coming into WNS and going to the user's device.

Einschränkungen bei sekundären Kachel KanälenLimitations of secondary tile channels

  • Es sind keine Popup-oder unformatierten Benachrichtigungen zulässig.No toast or raw notifications allowed. Popup-oder rohbenachrichtigungen, die an eine sekundäre Kachel gesendet werden, werden vom System ignoriert.Toast or raw notifications sent to a secondary tile are ignored by the system.
  • Erfordert die Registrierung Ihrer APP im Microsoft StoreRequires your app to be registered in the Microsoft Store

Erstellen eines sekundären Kachel KanalsCreating a secondary tile channel

PushNotificationChannel channel = 
    await PushNotificationChannelManager.CreatePushNotificationChannelForSecondaryTileAsync(tileId);

Alternative KanäleAlternate channels

Alternative Kanäle ermöglichen es apps, Pushbenachrichtigungen zu senden, ohne sich beim Microsoft Store registrieren oder pushkanäle außerhalb der primären Datenbank zu erstellen, die für die APP verwendet wird.Alternate channels enable apps to send push notifications without registering to the Microsoft Store or creating push channels outside of the primary one used for the app.

Was aktivieren alternative Kanäle?What do alternate channels enable?

  • Senden von Pushbenachrichtigungen an ein Windows-Gerät, das auf einem beliebigen Windows-Gerät ausgeführt wirdSend raw push notifications to a Windows running on any Windows device. Alternative Kanäle lassen nur unformatierte Benachrichtigungen zu (Sie können jedoch dennoch eine Hintergrundaufgabe aktivieren, um Popup-oder Kachel Benachrichtigungen lokal anzuzeigen).Alternate channels only allow for raw notifications (however you can still wake up a background task to locally show toast or tile notifications).
  • Ermöglicht es apps, mehrere rohdatenpushkanäle für verschiedene Funktionen innerhalb der APP zu erstellen.Allows apps to create multiple raw push channels for different features within the app. Eine APP kann bis zu 1000 alternative Kanäle erstellen, die jeweils 30 Tage gültig sind.An app can create up to 1000 alternate channels, and each one is valid for 30 days. Jeder dieser Kanäle kann separat von der APP verwaltet oder widerrufen werden.Each of these channels can be managed or revoked separately by the app.
  • Alternative pushkanäle können erstellt werden, ohne dass eine APP beim Microsoft Store registriert wird.Alternate push channels can be created without registering an app with the Microsoft Store. Wenn Ihre APP auf Geräten installiert werden soll, ohne Sie in der Microsoft Store zu registrieren, kann Sie weiterhin Pushbenachrichtigungen empfangen.If you app is going to be installed on devices without registering it in the Microsoft Store, it will still be able to receive push notifications.
  • Server können Pushbenachrichtigungen mithilfe der W3C-Standard-Rest-APIs und des vapid-Protokolls Übertragung.Servers can push notifications using the W3C standard REST APIs and VAPID protocol. Alternative Kanäle verwenden das W3C-Standardprotokoll. Dadurch können Sie die Server Logik vereinfachen, die gewartet werden muss.Alternate channels use the W3C standard protocol, this allows you to simplify the server logic that needs to be maintained.
  • Vollständige End-to-End-Nachrichten Verschlüsselung.Full, end-to-end, message encryption. Während der primäre Kanal während der Übertragung Verschlüsselung bereitstellt, können alternative Kanäle Ihre APP zum Schutz einer Nachricht über die Verschlüsselungs Header weiterleiten, wenn Sie besonders sicher sein möchten.While the primary channel provides encryption while in transit, if you want to be extra secure, alternate channels enable your app to pass through encryption headers to protect a message.

Einschränkungen von alternativen KanälenLimitations of alternate channels

  • Der Server Ihrer APP kann keine pushpopup-, Kachel-oder Badge-typbenachrichtigungen senden.Your app's server cannot send push toast, tile, or badge type notifications. Sie können nur Pushbenachrichtigungen senden.You can only send push raw notifications. Ihre APP kann weiterhin lokale Benachrichtigungen von ihrer Hintergrundaufgabe senden.Your app is still able to send local notifications from your background task.
  • Erfordert eine andere Rest-API als primäre oder sekundäre Kachel Kanäle.Requires a different REST API than either primary or secondary tile channels. Die Verwendung der W3C-Standard-Rest-API bedeutet, dass Ihre APP eine andere Logik zum Senden von pushtoast-oder Kachel Aktualisierungen benötigt.Using the standard W3C REST API means that your app will need to have different logic for sending push toast or tile updates

Erstellen eines alternativen KanalsCreating an alternate channel

PushNotificationChannel webChannel = 
    await PushNotificationChannelManager.GetDefault().CreateRawPushNotificationChannelWithAlternateKeyForApplicationAsync(applicationServerKey, appChannelId);

Kanaltyp VergleichChannel type comparison

Im folgenden finden Sie einen schnellen Vergleich zwischen den verschiedenen Arten von Kanälen:Here is a quick comparison between the different types of channels:

TypType Pushtoast?Push toast? Kachel/Badge über Push?Push tile/badge? Pushbenachrichtigungen per Push ausführen?Push raw notifications? AuthentifizierungAuthentication APIAPI Store-Registrierung erforderlich?Store registration required? ChannelsChannels VerschlüsselungEncryption
PrimärPrimary JaYes Ja, nur primär KachelYes - primary tile only JaYes OAuthOAuth WNS-Rest-APIWNS REST API JaYes Eine pro AppOne per app Während der ÜbertragungIn Transit
Sekundäre KachelSecondary Tile NeinNo Ja, nur sekundäre KachelYes - secondary tile only NeinNo OAuthOAuth WNS-Rest-APIWNS REST API JaYes Eine pro Sekundär KachelOne per secondary tile Während der ÜbertragungIn Transit
AlternativAlternate NeinNo NeinNo JaYes VapidVAPID Webpush-W3C-StandardWebPush W3C Standard NeinNo 1.000 pro App1,000 per app Bei Transit-und End-to-End-Verschlüsselung mit Header Pass-Through (erfordert app-Code)In transit + end to end encryption possible with header pass through (requires app code)

Auswählen des richtigen KanalsChoosing the right channel

Im Allgemeinen wird empfohlen, den primären Kanal in Ihrer APP mit wenigen Ausnahmen zu verwenden:In general, we recommend using the primary channel in your app, with a few exceptions:

  1. Wenn Sie ein Kachel Update auf eine sekundäre Kachel übertragen, verwenden Sie den Push-Kanal der sekundären Kachel.If you are pushing a tile update to a secondary tile, use the secondary tile push channel.
  2. Wenn Sie Kanäle an andere Dienste weiterleiten (z. b. im Fall eines Browsers), verwenden Sie den alternativen Kanal.If you are passing out channels to other services (such as in the case of a browser) use the alternate channel.
  3. Wenn Sie eine APP erstellen, die nicht im Windows Store (z. b. einer Lob-APP) aufgelistet wird, verwenden Sie einen alternativen Kanal.If you are creating an app that won't be listed in the Windows store (such as an LOB app) use an alternate channel.
  4. Wenn Sie über vorhandenen webpushcode auf dem Server verfügen, den Sie wieder verwenden möchten, oder wenn Sie mehrere Kanäle in Ihrem Back-End-Dienst benötigen, verwenden Sie alternative Kanäle.If you have existing web push code on your server you wish to reuse or have a need for multiple channels in your backend service, use alternate channels.