Adobe recommande d’utiliser l’éditeur d’application d’une seule page (SPA) pour les projets nécessitant un rendu côté client basé sur la structure SPA (par exemple, React). En savoir plus.
Consultez les instructions suivantes pour le développement de gestionnaires de synchronisation de contenu :
La liste suivante répertorie les gestionnaires d’applications prêts à l’emploi :
mobileapppagesRenders Pages de l’application.
type - Chaîne - mobileapppages
path - String - chemin d’accès à une page
extension - String - extension qui doit être utilisée dans la requête. Pour les pages, cela est presque toujours html, mais d’autres sont encore possibles.
selector - String : sélecteurs facultatifs séparés par un point. Les exemples courants sont touch pour le rendu des versions mobiles d’une page.
deep - Booléen - Propriété booléenne facultative déterminant si les pages enfants doivent également être incluses. La valeur par défaut est true.
includeImages - Booléen - Propriété booléenne facultative déterminant si les images doivent être incluses. La valeur par défaut est true.
includeVideos - Booléen - Une propriété booléenne facultative détermine si les vidéos doivent être incluses. La valeur par défaut est true.
includeModifiedPagesOnly - Booléen - Si elle est fausse ou omise, elle affiche toutes les pages et vérifie les mises à jour dans le rendu. Si la valeur est true, la base diffère des modifications apportées à une page lastModified.
+ rewrite (noeud)
- relativeParentPath - Chaîne : chemin d’accès auquel écrire tous les autres chemins relatifs.
Le type de ressource des composants image et vidéo affectés par ce gestionnaire est défini en configurant les propriétés de com.adobe.cq.mobile.platform.impl.contentsync.handler.Service OSGi MobilePagesUpdateHandler.
mobilepageassetsCollecte des ressources de page d’application.
mobilecontentlistingRépertorie le contenu du fichier compressé ContentSync. Il est utilisé par le js côté client sur l’appareil pour effectuer la copie de fichier initiale requise pour les applications AEM.
Ce gestionnaire doit être ajouté à toute configuration ContentSync de l’application AEM.
{
"files": [
"config.xml",
"res/screens/ios/screen-ipad-portrait-2x.png",
"res/screens/ios/screen-ipad-landscape.png",
"res/screens/ios/screen-iphone-portrait-2x.png",
"res/screens/ios/screen-iphone-landscape.png",
"res/screens/ios/screen-iphone-portrait.png",
"apps/weretail-app/components/splash-page/clientlibs.css",
...
"pge-content-packages.json"
],
"count": 382,
"lastModified": 1422902754733
}
mobilecontentpackageslistingRépertorie le package de contenu AEM dans une application donnée ainsi que l’URL du serveur vers lequel effectuer les demandes de mise à jour. Il est utilisé par les js côté client sur l’appareil pour demander des mises à jour de contenu.
Le gestionnaire doit être utilisé sur AEM Configuration ContentSync de l’interpréteur d’applications (noeud avec pge-type=app-instance).
Le bloc de code suivant n’est pas une implémentation exacte et doit être utilisé comme exemple de référence :
{
"content": [
{
"name": "en",
"title": "We Retail Mobile App - English",
"type": "CONTENT",
"path": "/content/phonegap/weretail-outdoors/en",
"updatePath": "/content/phonegap/weretail/en/jcr:content/pge-app/app-config"
},
{
"name": "shell",
"title": "We Retail Mobile App",
"type": "INSTANCE",
"path": "/content/phonegap/weretail-outdoors/shell",
"updatePath": "/content/phonegap/weretail/shell/jcr:content/pge-app/app-config"
}
],
"serverURL": "http://localhost:4503/"
}
widgetconfigInclut un fichier config.xml mis à jour qui fusionne toutes les modifications effectuées via le centre de commandes avec un fichier config.xml fourni. Si ce gestionnaire n’est pas inclus, les détails de l’application qui sont modifiés via l’interface d’administration ne seront pas inclus dans le cache.
Ce gestionnaire doit être utilisé sur une configuration ContentSync de Shell d’application AEM (noeud avec pge-type=[app-instance]).
mobileADBMobileConfigJSONI Incluez le fichier ADBMobileConfig.JSON si le service de cloud AMS a été configuré.
Il est utilisé au moment de la compilation pour configurer le module externe AMS pour la prise en charge de l’analyse.
Le gestionnaire doit être utilisé sur AEM Configuration ContentSync de l’interpréteur d’applications (noeud avec pge-type=app-instance).
notificationsconfigExtrait les configurations de notifications requises sur le périphérique. Les propriétés sont extraites de la configuration de service cloud de service Push correspondante associée à l’application.
Les propriétés non AEM du noeud jcr:content du service cloud sont extraites et ajoutées au fichier JSON pge-notifications-config.json pour inclusion à la racine www du contenu de l’application.
Les propriétés AEM sont celles qui sont placées dans un espace de noms avec "cq", "sling" ou "jcr". D’autres propriétés peuvent être exclues à l’aide de la propriété "excludeProperties" sur le noeud de configuration content-sync.
contentsyncconfigcontentCollecte du contenu à partir d’une configuration ContentSync existante.
type - String - contentsyncconfigcontent
path - String - Chemin d’accès à l’un des éléments suivants :
autoCreateFirstUpdateBeforeImport - Booléen - si la valeur est true, créez une mise à jour initiale dans la configuration cible avant de procéder à l’importation si une fois n’existe pas déjà.
autoFillBeforeImport - Booléen - si la valeur est true, mettez à jour/remplissez la configuration cible avant d’importer
configSuffix - String - chaîne à ajouter au chemin indiqué sur la propriété "phonegap-exportTemplate" de app-content. Vous pouvez l’utiliser pour distinguer différents modèles d’exportation. Par exemple, cette propriété peut être définie sur "-dev" pour indiquer que "/…/…/…/…/appconfig-dev" doit être utilisé (par opposition à "/…/…/…/appconfig").
app- assetsInclut toutes les ressources associées à une instance d’application. Ce gestionnaire inclut toutes les ressources trouvées sous le chemin spécifié, ainsi que toutes les ressources référencées par la propriété appAssetPath d’une instance d’application.
type - Chaîne - app-assets
path -String - chemin d’accès à un emplacement sous une instance d’application où les ressources de l’application sont stockées
mobileappoffersUn nouveau gestionnaire de synchronisation de contenu a été introduit pour le cas d’utilisation de la personnalisation pour le rendu du contenu ciblé. Le gestionnaire "mobileappoffers" sait comment effectuer le rendu des offres cibles associées qui ont été créées par l’auteur du contenu. Le gestionnaire mobileappoffers étend le gestionnaire de mise à jour des pages abstraites. De ce fait, de nombreuses propriétés sont similaires. Les détails du gestionnaire mobileappoffers présentent les propriétés suivantes.
Le gestionnaire mobileappsoffers étend le gestionnaire mobileappspages et ajoute les propriétés suivantes :
mobileappconfigLe gestionnaire de synchronisation de contenu mobileappconfig permet d’injecter des données JSON dans le fichier MobileAppsConfig.json. Pour enregistrer une classe de fournisseur, les développeurs ajouteront leur classe MobileAppsInfoProvider à la liste des fournisseurs. Le gestionnaire effectue une itération sur la liste de MobileAppsInfoProviders et permet au fournisseur d’injecter des données dans le fichier json résultant. La liste des propriétés prises en charge par ce gestionnaire est la suivante :
[]
- liste des MobileAppsInfoProviders entièrement qualifiésIl est possible que plusieurs gestionnaires mobileappconfig soient configurés chacun avec un ensemble unique de fournisseurs écrivant dans différents fichiers JSON.
Procédure de vérification du cache IntegrityClear
Procédure de débogage
LoggingEnable ContentSync Debug logging via les configurations de journalisation OSGI sur le package com.day.cq.contentsync
Cela vous permet de suivre les gestionnaires exécutés et s’ils ont mis à jour le cache et signalé la mise à jour du cache.
Pour en savoir plus sur les rôles et les responsabilités d’un administrateur et d’un développeur, consultez les ressources ci-dessous :
Pour commencer à développer des applications AEM Mobile, cliquez ici.