Adobe empfiehlt die Verwendung des SPA-Editors für Projekte, die ein Framework-basiertes clientseitiges Rendering von Einzelseiten-Apps erfordern (z. B. React). Weitere Informationen
Das Erstellen einer AEM Mobile On-demand Services-App unterscheidet sich vom Erstellen einer App, die direkt in der Cordova- (oder PhoneGap-)Shell ausgeführt wird. Die Entwickler sollten mit folgenden Themen vertraut sein:
Plugins, die standardmäßig unterstützt werden, und Adobe Experience Manager (AEM) Mobile-spezifische Plug-ins.
HINWEIS
Ausführliche Informationen zu Plug-ins finden Sie in den folgenden Ressourcen:
Vorlagen, die Plug-in-Funktionen verwenden, sollten so geschrieben werden, dass sie im Browser noch autorisiert werden können, ohne dass die Plug-in-Verbindung vorhanden ist.
Achten Sie beispielsweise darauf, auf die Abflussgetreide -Funktion, bevor versucht wird, auf die API eines Plug-ins zuzugreifen.
Richtlinien für AEM Entwickler
Die folgenden Richtlinien helfen zuständigen AEM-Entwicklern bei Sites, die mobile App-Vorlagen und -Komponenten erstellen möchten:
Strukturieren AEM Sites-Vorlagen zur Förderung der Wiederverwendung und Erweiterbarkeit
Mehrere Komponentenskriptdateien über eine einzige monolithische
Es werden mehrere leere Erweiterungspunkte bereitgestellt, z. B. customheaderlibs.html und customfooterlibs.html, die es dem Entwickler ermöglichen, die Seitenvorlage zu ändern und dabei möglichst wenig Kerncode zu duplizieren
Vorlagen können dann über die von Sling sling:resourceSuperType Mechanismus
Sightly/HTL über JSP als Vorlagensprache bevorzugen
Dadurch wird eine Trennung von Code und Markup gefördert, es bietet integrierten XSS-Schutz und eine vertrautere Syntax
Optimieren der Leistung auf dem Gerät
Artikelspezifische Skript- und Stylesheets sollten in die Artikelnutzlast aufgenommen werden, indem die contentsync-Vorlage dps-article verwendet wird.
Skript- und Stylesheets, die von mehr als einem Artikel gemeinsam verwendet werden, sollten über die Vorlage "dps-HTMLResources contentsync"in gemeinsam genutzten Ressourcen enthalten sein
Referenzieren Sie keine externen Skripte, die Render-Blocking sind
HINWEIS
Ausführlichere Informationen zu Render-Blocking-externen Skripten here.
App-spezifische clientseitige JS- und CSS-Bibliotheken im Vergleich zu webspezifischen
So vermeiden Sie Mehraufwand in Bibliotheken wie jQuery Mobile für die Verarbeitung einer großen Bandbreite von Geräten und Browsern
Wenn eine Vorlage in der Webansicht einer App ausgeführt wird, haben Sie die Kontrolle über die Plattformen und Versionen, die die App unterstützen wird, sowie über das Wissen, dass JavaScript-Unterstützung vorhanden sein wird. Nehmen wir beispielsweise an, dass Ionic (nur CSS) gegenüber jQuery Mobile und Onsen UI den Vorzug vor Bootstrap hat.
HINWEIS
Um mehr über jQuery Mobile zu erfahren, klicken Sie auf here.
Mikrobibliotheken über Vollstapel bevorzugen
Die Zeit, die benötigt wird, um Ihren Inhalt auf das Glas des Geräts zu bringen, wird von jeder Bibliothek verlangsamt, von der Ihre Artikel abhängen. Diese Verlangsamung wird verstärkt, wenn eine neue Webansicht zum Rendern jedes Artikels verwendet wird. Daher muss jede Bibliothek von Grund auf neu initialisiert werden
Wenn Ihre Artikel nicht als SPA (Einzelseiten-Apps) erstellt wurden, müssen Sie wahrscheinlich keine Vollstapelbibliothek wie Angular einfügen
Verwenden Sie kleinere, einzweckige Bibliotheken, die dazu beitragen, die für Ihre Seite erforderliche Interaktivität hinzuzufügen, z. B. Fastclick oder Velocity.js
Minimieren der Artikelnutzlast
Verwenden Sie die kleinstmöglichen Assets, die mit einer angemessenen Auflösung effektiv den größten unterstützten Viewport abdecken können.
Verwenden Sie ein Tool wie ImageOptim auf Ihren Bildern, damit Sie überschüssige Metadaten entfernen können
Erste Schritte
Weitere Informationen zu den beiden anderen Rollen und Zuständigkeiten finden Sie in den folgenden Ressourcen: