In einigen Anwendungsfällen reicht es jedoch nicht aus, eine Applikation als reine Webanwendungen auszuliefern. Grund dafür ist, dass Webanwendungen im Regelfall keinen Zugriff auf Hardwarefeatures des ausführenden Geräts erhalten. So ist es innerhalb einer im Browser laufenden Anwendung beispielsweise nicht möglich, auf den internen Speicher des Geräts zuzugreifen oder Push Mitteilungen zu erhalten. Sollten Sie diese Features für die Umsetzung des Projekts jedoch zwingend benötigen, bieten Ihnen die folgenden Alternativen Lösungen, mit denen Sie das bewährte Fiori-Konzept beibehalten, aber dennoch nicht auf die benötigten Ressourcen verzichten müssen.
Eine hybride SAP-Fiori-App bietet alle Funktionalitäten einer reinen SAPUI5-Webanwendung und zusätzlich den direkten Zugriff auf Hardware-Ressourcen wie z. B. Barcode-Scanner, Standortbestimmung per GPS und Push-Nachrichten des mobilen Endgeräts (Smartphone, Tablet).
Aus einer bestehenden SAPUI5-Anwendung können Sie leicht eine hybride Version generieren. Dafür setzen Sie das Framework „Apache Cordova“ [2] (ehemals Phonegap) ein. Mit der Entwicklung von „Kapsel“ [3] hat SAP eine Sammlung von Plugins für Cordova geschaffen, mit der die SAPUI5-Controls übersetzt werden können, damit die App weiterhin direkt auf Android und iOS lauffähig ist.
Die Entwicklung einer hybriden Fiori App ist häufig die richtige Wahl, wenn es um den Zugriff auf Hardware-Ressourcen geht.
Für die Entwicklung von nativen SAP Fiori Apps werden Programmiersprachen wie Swift für Apple iOS sowie Java oder Kotlin für Android-Systeme genutzt. Diese bieten Ihnen die Möglichkeit, auf alle Features des Geräts zuzugreifen und sind deutlich
performanter als ihre Konkurrenz. SAP stellt dafür ein Software Development Kit (SDK) zur Verfügung, welches auf den von Fiori definierten Guidelines aufbaut. Das SDK ist eine Sammlung von Frameworks und wurde 2017 für iOS [4] und Mitte 2018 für Android [5] veröffentlicht. Für beide SDKs existieren mittlerweile offizielle SAP Fiori Design Guidelines.
Das SAP Cloud Plattform SDK kann die App mithilfe eines Assistenten direkt in den Mobile Services der Cloud Plattform veröffentlichen und verwalten. Weiterhin ist es Ihnen damit möglich, einen bereits vorhandenen OData-Service hinzuzufügen. Dadurch werden sogenannte Proxy-Klassen generiert, über die der Datenaustausch mit dem Backend-System vereinfacht wird. Außerdem wird eine Login-Maske für die Authentifizierung erstellt.
Gegenüber einer reinen SAPUI5-Web-App bietet die native Fiori App u. a. folgende Zusatzfunktionalitäten:
Der SAP Fiori Client ist eine Laufzeitumgebung für Fiori-Apps. Diese wird als native App von SAP über den Apple App Store (für iOS) bzw. über Google Play (für Android) bereitgestellt. Der SAP Fiori Client kann bestehende Fiori Apps oder ein SAP Fiori Launchpad über deren URL einbinden.
Ähnlich wie bei hybriden Fiori Apps bietet der SAP Fiori Client Ihnen als Entwickler direkten Zugriff auf Hardwareressourcen des genutzten Endgerätes mittels Cordova. Die dazu notwendige Infrastruktur des Apache Cordova Frameworks bringt der Fiori Client bereits mit.
Die Entwicklung einer unter SAP Fiori Client lauffähigen App gleicht der Entwicklung einer Standard-Fiori Web App. Zusätzlich müssen Sie lediglich den benötigten Code für die Verwendung der Zusatzfeatures implementieren.
Zudem bietet der Fiori Client u.a. eine verbesserte Performance aufgrund von optimiertem Cache Management, so wie einfaches Auslesen der Standortdaten und das Verwenden des Barcodescanners.
Die Verwendung von SAP Mobile Cards ist eine ausgezeichnete Möglichkeit einfache Use Cases abzubilden und setzt bei der Entwicklung auf die Webstandards HTML, CSS und JavaScript. Genau wie Fiori Apps nutzen Mobile Cards einen OData-Service als Datenquelle. So lassen sich wichtige Informationen komprimiert anzeigen. Mobile Cards zielen auf einfache Use Cases ab und bieten die Möglichkeit auf Karten mit Standardoperationen wie „Akzeptieren“ und „Verwerfen“ zu reagieren. Weiterhin dienen sie primär dazu, einen schnellen Überblick auf wesentliche Unternehmenskennzahlen und -Grafiken zu erhalten. Mit Hilfe eines Abonnementsystems können Sie über die Auswahl der angezeigten Karten entscheiden und erhalten gleichzeitig vom Administrator als Standard definierte Karten automatisch auf Ihr Gerät [6].
Nachdem wir Ihnen nun einige Alternativen zur klassischen Fiori-Webanwendung beschrieben haben, stellt sich natürlich die Frage, wann Sie welche einsetzen?
Die Wahl der richtigen Implementierung hängt im Allgemeinen von den im Use Case enthaltenen Anforderungen ab. Können Sie das Konzept ohne den Zugriff auf die Hardware des aufrufenden Gerätes umsetzen, ist eine Fiori-Webanwendung die richtige Wahl. Reichen die Features einer Webanwendung nicht aus, prüfen Sie, ob Sie mit dem SAP Fiori Client Abhilfe schaffen können. Benötigen Sie weitere Gerätefeatures, die die SAP Fiori Client App nicht unterstützt, können Sie das Konzept mit Hilfe des iOS- oder Android-SDK in Form einer nativen App umsetzen. SAP Mobile Cards wurden für die Nutzung auf Smartphones optimiert. Daher sollten Sie diese nur in für SAP Mobile Cards entwickelten Use Cases verwenden.
Links: