Neue App-Erweiterung

iOS 14 ermöglicht lokale Push-Nachrichten

23.07.2020
Von   
Mark Zimmermann leitet hauptberuflich das Center of Excellence (CoE mobile) zur mobilen Lösungsentwicklung bei der EnBW Energie Baden-Württemberg AG in Karlsruhe. Er weist mehrere Jahre Erfahrung in den Bereichen Mobile Sicherheit, Mobile Lösungserstellung, Digitalisierung und Wearables auf. Der Autor versteht es, seine Themen aus unterschiedlichsten Blickwinkeln für unternehmensspezifische Herausforderungen darzustellen. Neben seiner hauptberuflichen Tätigkeiten ist er Autor zahlreicher Artikel in Fachmagazinen.
Apple unterstützt mit iOS / iPadOS 14 das Senden von Benachrichtigungen an Geräte über das lokale Netzwerk - ganz ohne Internet. Dies könnte zum Beispiel in Umgebungen wie Schulen oder auf Kreuzfahrtschiffen sehr nützlich sein.
Mit iOS / iPadOS 14 unterstützt Apple das Senden von Benachrichtigungen an Geräte über das lokale Netzwerk - ganz ohne Internet.
Mit iOS / iPadOS 14 unterstützt Apple das Senden von Benachrichtigungen an Geräte über das lokale Netzwerk - ganz ohne Internet.
Foto: Maridav - shutterstock.com

Push-Benachrichtigungen spielen eine sehr wichtige Rolle, wenn es darum geht, die Anwender rechtzeitig mit Informationen zu versorgen und ihnen die Möglichkeit zu geben, geeignete Maßnahmen zu ergreifen. Bislang erfolgten diese im Apple-Universum immer über das Internet mithilfe des APNs (Apple Push Notification Service). Es gab zwar die Möglichkeit, auf einem iOS-Gerät selbst eine "lokale" Push-Benachrichtigung zu erstellen, allerdings nur mit etlichen Einschränkungen.

iOS 14 bringt lokale Push-Funktionalität

Als Konsequenz kann eine App in Umgebungen ohne Internet und damit ohne Verbindung zum APNs keine (Push-)Benachrichtigungen empfangen. Auf einer Kreuzfahrt, in einem Flugzeug, in Krankenhäusern oder auch auf Campingplätzen, wo häufig nur eine eingeschränkte oder gar keine Internet-Verbindung existiert, ist die Push-Benachrichtigungsfunktion einer App somit beeinträchtigt oder schlichtweg nicht möglich.

Mit iOS / iPadOS 14 geht Apple einen entscheidenden Schritt, um Push-Benachrichtigungen auch in eingeschränkten Netzwerkumgebungen funktionsfähig zu halten. Die lokale Push-Konnektivität ist eine Lösung des Konzerns aus Cupertino, die dieses Problem lösen soll. Dabei handelt es sich um eine API, die in den seit länger bekannten NetworkExtensions, die verschiedene netzwerkbezogene Interaktionen ermöglichen, integriert wird.

Mit Hilfe dieser neuen API können App-Entwickler eine App erstellen, die direkt mit dem dazugehörigen Server - in einem lokalen WLAN-Netzwerk - kommunizieren kann. Da hier kein APNs verwendet wird, müssen App-Entwickler ihr eigenes Protokoll zwischen dem Server des Anbieters und der App-Erweiterung definieren, um die Push-Benachrichtigungen zu verteilen. Dabei ist es erforderlich, dass sich die Anwendung in den spezifischen WLAN-Netzwerke registriert, in denen die lokale Push-Konnektivität für die Anwender bereitgestellt werden soll. Bucht sich das iOS-Gerät in eines der angegebenen WLAN-Netze ein, startet das iOS-System die App-Erweiterung und sie kann zur Kommunikation mit dem besagten Server im lokalen Netzwerk genutzt werden.

VoIP-Telefonate im lokalen Netzwerk

Der Code der App Extension verwendet das UserNotifications Framework, um lokale Benachrichtigungen zu ermöglichen. So kann eine Benachrichtigung angezeigt, ein Ton wiedergegeben oder ein Badge an einer App aktualisiert werden. Auch VoIP-Benachrichtigungen sind möglich. Beim Empfang einer solchen VoIP-Benachrichtigung verwendet die App-Erweiterung das NEAppPushProvider Framework, um den eingehenden Anruf an das iOS-System zu melden. So können auch VoIP-Apps per CallKit-Framework - beispielsweise einem Kreuzfahrtschiff ohne Internet - verwendet werden.

Die API für die lokale Push-Konnektivität ist für eine kleine Gruppe sehr spezifischer Anwendungsfälle konzipiert. Charakteristisch für diese sind Einschränkungen in Netzwerkumgebungen und besondere Anforderungen der Benutzer in diesen Umgebungen. Daher müssen App-Entwickler ein spezielles Entitlement hierfür bei Apple beantragen. (mb)