Apple Push-Benachrichtigungsdienst (APNs)

Was ist der Apple Push-Benachrichtigungsdienst?

Der Apple Push-Benachrichtigungsdienst (APNs) ist ein von Apple bereitgestellter Zustelldienst für sein iOS-Ökosystem, der Nachrichten von entfernten Servern an Geräte wie iPhones, iPads und Macs überträgt. Die Rolle des App-Servers dabei ist es, als Vermittler zwischen dem App-Server und den Geräten zu agieren, indem er die Echtzeitinformationsübertragung erleichtert. Wenn das Entwicklungsteam beabsichtigt, eine Push-Benachrichtigung an das Gerät des Benutzers zu senden, verwenden sie einen APN, um diese Nachricht direkt an das Betriebssystem des Geräts zu senden.

Dann erhält der Benutzer die Benachrichtigung. Darüber hinaus sind APNs dafür verantwortlich, den Benutzern relevante Informationen über die Apps bereitzustellen, die sie installiert haben, und es ihnen einfacher zu machen, auf dem neuesten Stand zu bleiben.

Eine erläuternde Grafik zur Funktionsweise von Push-Benachrichtigungen, von der Freigabe einer Benachrichtigung durch einen Benutzer über den gesamten Zyklus des App-Servers und der APNs bis hin zur Übermittlung der Benachrichtigung an das Gerät des Benutzers
Diagramm des Push-Benachrichtigungsprozesses mit fünf Schlüsselphasen

Arten von Benachrichtigungen

APNs bieten verschiedene Formen von Benachrichtigungen, die an Apple-Geräte gesendet werden können. Diese Benachrichtigungen bestehen aus Abzeichen, Tönen und benutzerdefinierten Textbenachrichtigungen. Abzeichen sind kleine numerische Symbole, die auf App-Symbolen erscheinen und auf die Existenz neuer Inhalte oder ungelesener Nachrichten hinweisen. Benachrichtigungen können von Tönen begleitet werden, um die Aufmerksamkeit der Benutzer zu erregen und als hörbare Warnung zu fungieren. Benutzerdefinierte Textbenachrichtigungen ermöglichen es Entwicklern, dedizierte Nachrichten zu senden, die Informationen zur App-Nutzung direkt an die Benutzer enthalten.

Mit diesen verschiedenen Arten von Benachrichtigungen können Entwickler faszinierende und interaktive Aktivitäten für ihre Anwendungsbenutzer entwerfen. Ob ein Spiel den Spieler über einen neuen Level informiert oder eine Messaging-App Echtzeitnachrichten sendet, APNs bleiben das zentrale Mittel zur Erreichbarkeit für verschiedene Arten von Benachrichtigungen.

Entwicklung der APNs

Die APNs wurden erstmals von Apple am 9. Juni 2008 auf der WWDC (Worldwide Developer Conference) vorgestellt. Anfangs hatte die Akzeptanz der APNs Skalierbarkeitsprobleme aufgrund der hohen Anzahl von Push-Benachrichtigungen und der anschließenden Verzögerungen bei der Zustellung der Benachrichtigungen. Apple öffnete den Zugang zu den APNs für Mac OS X, was es Entwicklern ermöglichte, Push-Benachrichtigungen an Macs zu übertragen und eine einheitliche Erfahrung für Benutzer auf allen Apple-Geräten bereitzustellen.

Technische Verbesserungen in den APNs

Im Laufe der Jahre haben die APNs verschiedene technische Modifikationen durchlaufen, um ihre Fähigkeiten und Effektivität zu verbessern. Eine bemerkenswerte Verbesserung war die Erhöhung der Benachrichtigungspayloads von 256 Bytes auf 2 Kilobytes. Apple hat auch eine effizientere Sendeschnittstelle erstellt, die den Overhead reduziert und die allgemeine Effizienz der APNs erhöht hat. Eine der wichtigsten APN-Verbesserungen war der Wechsel zur HTTP/2-Provider-API. Dies brachte eine Reihe von Vorteilen mit sich, wie eine schnellere und effizientere Zustellung von Push-Benachrichtigungen an Geräte durch Multiplexing.

Netzwerkanforderungen und Spezifikationen

Bestimmte Protokolle und Standards sollten vorhanden sein, um die Verbindung zwischen App-Servern und APNs herzustellen. APN verwendet bestimmte TCP-Ports für die Kommunikation, daher ist es notwendig, dass sie geöffnet und zugänglich sind.

  • Port 5223: Dieser Port kommuniziert mit dem APNs-Rückmeldedienst. Der Rückmeldedienst ermöglicht es App-Servern, Daten über Geräte abzurufen, die eine App entfernt oder Push-Benachrichtigungen deaktiviert haben.
  • Port 443: Dieser Port wird verwendet, um mit der API des APN-Anbieters zu kommunizieren. Es ist der Kommunikationskanal von App-Servern zu APNs, über den Push-Benachrichtigungen an Benutzergeräte gesendet werden.

Manchmal können diese Ports durch Firewall-Einschränkungen blockiert oder so konfiguriert sein, dass ein direkter Zugriff nicht möglich ist. Um diese Einschränkungen zu überwinden, können die Entwickler alternative Lösungen wie HTTP/2 oder APN-unterstützende Push-Benachrichtigungsdienste verwenden.

AnschlussnummerFunktionsweiseLösungen für Zugangsprobleme
5223Wird zum Abrufen von Informationen über Geräte verwendet, die eine App deinstalliert oder Benachrichtigungen deaktiviert habenVerwenden Sie alternative Methoden wie HTTP/2 oder Push-Benachrichtigungsanbieter von Drittanbietern zur Unterstützung von APNs
443Hauptport zum Senden von Push-Benachrichtigungen von App-Servern an APNsVerwenden Sie alternative Methoden wie HTTP/2 oder Push-Benachrichtigungsanbieter von Drittanbietern für die Unterstützung von APNs

Verweise

  1. Apple Push Notification Service” Benachrichtigungen im Überblick – Apple Developer
  2. Apple Push Notification service – Wikipedia
  3. iOS Push Notifications Explained | Airship
  4. iOS remote push notifications in a nutshell | von Deyan Aleksandrov | Me

Additional Resources