Notification Service Extension und kritische Push Nachrichten in Expo
24. August 2024 • 6 min lesen
Zuletzt geändert am 24. August 2024
Mit Version 1.0.1 warnt CheckOkay Beschützer auf iOS Geräten mit kritischen Push Nachrichten. Die Implementierung war allerdings schwieriger als gedacht. Die iOS und Android Apps von CheckOkay werden mit dem Expo Framework entwickelt und für Push Nachrichten verwenden wir die Expo Push Api. In dieser lassen sich leider keine APNS spezifischen Werte wie Folgende setzen.
Aus diesem Grund setzen wir nun eine NSE (Notification Service Extension) ein. NSE's werden von iOS ausgeführt (selbst wenn die App terminiert ist) und können den Inhalt einer Push Nachricht modifizieren bevor diese angezeigt wird. Vereinfacht sieht unser NSE wie folgt aus:
Nun müssen wir die NSE in das Expo Projekt integrieren. Wird Expo im Bare Workflow genutzt, kann die NSE einfach über XCode hinzugefügt werden. Im Managed Workflow kann die NSE über ein Config Plugin eingerichtet werden. Wir haben uns dazu entschieden im Managed Workflow zu bleiben und nutzen das OneSignal Expo Plugin, wobei wir alle Referenzen auf das OneSignal SDK entfernt und nur die Funktionalität zum Konfigurieren der NSE übernommen haben.