SAPUI5 Apps Offline nutzen – Teil 1
Alle Anwendungen werden heutzutage mobil zur Verfügung gestellt. Aber was passiert, wenn die Anwendung keine Verbindung zu den benötigten Datenquellen hat? Dann wird die App nahezu nutzlos, denn ohne Internetverbindung lassen sich keine aktuellen Daten abrufen und Änderungen vornehmen. Die Lösung dafür ist sehr naheliegend: Machen Sie ihre SAP Apps offlinefähig! Aber welche Technologien gibt es um die Anwendung offlinefähig zu gestalten und welche Herausforderungen ergeben sich bei der Umsetzung?
SAP Kapsel Framework
SAP bietet mit dem Kapsel Framework ein Standard-Entwicklungswerkzeug zum Erstellen offlinefähiger Apps an. Mithilfe dessen wird ihre plattformunabhängige SAPUI5 Web-App zu einer hybriden plattformabhängigen App. Die Portierung der App erfolgt mit dem SAP Kapsel Framework, welches diverse Plugins, wie bspw. das Offline OData Plugin, zur Verfügung stellt.
Für die Verwendung des SAP Kapsel Frameworks wird ein zusätzlicher Server, eine SAP Mobile Application Platform (kurz SMP), in ihrer Systemlandschaft benötigt. Der SMP Server dient zur Kommunikation ihrer Anwendung mit dem jeweiligen Endgerät.
Vorteile:
- Gut geeignet für große Datenmengen, durch die automatische Verwaltung durch den SMP Server
- Verschlüsselung der Daten durch den SMP Server
Nachteile:
- Extra Lizenzkosten für den SMP Server
- Plattformabhängige hybride App
HTML5 Offline Storage
Eine weitere Umsetzungsmöglichkeit bietet die HTML5 Offline Storage Funktionalität. Da SAPUI5 auf HTML5 basiert, ist kein zusätzliches Einbinden von Frameworks oder Bibliotheken notwendig. Die webbasierte SAPUI5 App bleibt in ihrer Grundarchitektur bestehen. Die Integration der Offlinefunktionalität erfolgt manuell durch den Einsatz des Local- oder Session- Storage. Der Unterschied in den beiden Varianten liegt in der Dauer der Datenspeicherung. Der Session Storage ist nur für eine Sitzung im Browser verfügbar, wohingegen der Local Storage die Daten über eine Browsersitzung hinausspeichert. Die Speicherung der Daten erfolgt als Key – Value Pair im JSON Format.
Vorteile:
- Keine Extrakosten und keine Portierung notwendig
- Einfache und schnelle Umsetzung bei geringen Datenmengen
Nachteile:
- Keine automatische Verschlüsslung der Daten
- Begrenzung des HTML5 Offline Storage, je nach mobilem Endgerät
Fazit bei der Integration einer Offlinefähigkeit
Welche der beiden Varianten für Ihre Anwendung am besten in Frage kommt, lässt sich nicht pauschal sagen. Die Integration einer Offlinefähigkeit in eine SAPUI5 App erfordert immer eine genaue Analyse der Datenbasis und deren Umfang.