Ich habe eine Mobile App auf Azure eingerichtet und Push-Benachrichtigungen mit einem neu erstellten Notification Hub konfiguriert.Azure Notification Hub: Was sind die Registrierungsarten "Native" und "Template"?
Bisher habe ich nur den iOS-Client implementiert, folge den Guides über here und es registriert sich erfolgreich. Ich kann zum Azure-Portal gehen und eine Testbenachrichtigung senden und das Senden von meinem eigenen Code funktioniert auch.
In VS besichtigte ich die registrierten Geräte und folgendes sehen:
Zwei Registrierungen vorgenommen wurden, die beide für das gleiche Gerät (der PNS ist gleich), sind die Anmeldungen IDs anders.
Wenn ich den Test über das Portal versende, wird die Nachricht an die Registrierung gesendet, die "Native" lautet. Wenn ich über das Backend sende, wird es an "Vorlage" gesendet.
- Was sind diese beiden Registrierungen?
- Warum werden unterschiedliche Registrierungen verwendet, abhängig davon, wohin ich sende?
Um die Nachricht von Code senden Ich verwende:
var result = await hub.SendTemplateNotificationAsync(templateParams).ConfigureAwait(false);
Und wie oben erwähnt, wird das Ergebnis Details zu „Vorlage“ Anmeldung eine erfolgreiche Zustellung zeigen.
Der Kunde registriert sich wie folgt aus:
const string templateBodyAPNS = "{\"aps\":{\"alert\":\"$(messageParam)\"}}";
var templates = new JObject();
templates["genericMessage"] = new JObject
{
{"body", templateBodyAPNS}
};
await push.RegisterAsync(deviceToken, templates);