Adobe建议对需要基于单页应用程序框架的客户端渲染(例如React)的项目使用SPA编辑器。 了解更多。
请参阅以下有关开发内容同步处理程序的准则:
下面列出了现成的应用程序处理程序:
mobileappages 呈现应用程序页面。
类型 — 字符串 - mobileappages
路径 — 字符串 — 页面路径
扩展 — 字符串 — 请求中应使用的扩展。 对于页面,这几乎总是 html但其他仍有可能。
选择器 — 字符串 — 可选选择器,以圆点分隔。 常见示例包括 触控 ,用于渲染页面的移动版本。
deep — 布尔值 — 确定是否应包含子页面的可选布尔属性。 默认值为 真的。
includeImages — 布尔值 — 确定是否应包含图像的可选布尔属性。 默认值为 true.
includeVideos — 布尔值 — 可选布尔属性,用于确定是否应包含视频。 默认值为 true.
includeModifiedPagesOnly — 布尔值 — 如果为false或忽略,则渲染所有页面并检查渲染中的更新。 如果为true,则根据对页面lastModified的更改而有所不同。
+重写(节点)
- relativeParentPath — 字符串 — 相对于写入所有其他路径的路径。
通过配置 com.adobe.cq.mobile.platform.impl.contentsync.handler.MobilePagesUpdateHandler OSGi服务.
mobilepageassets 收集应用程序页面资产。
mobilecontentlisting 列出ContentSync zip的内容。 设备上的客户端js会使用此功能来执行AEM应用程序所需的初始文件副本。
此处理程序应添加到任何AEM应用程序ContentSync配置中。
{
"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
}
mobilecontentpackagelisting 列出给定应用程序中的AEM内容包以及要向其发出更新请求的serverURL。 设备上的客户端js使用此参数来请求内容更新
处理程序应用于AEM App Shell ContentSync配置(具有pge-type=app-instance的节点)
以下代码块不是确切的实施,应该用作引用示例:
{
"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/"
}
widgetconfig 包含更新的config.xml,可将通过命令中心所做的任何编辑与提供的config.xml合并。 如果此处理程序未包含通过管理界面更改的任何应用程序详细信息,则缓存中将不会包含这些详细信息。
此处理程序应用于AEM App Shell ContentSync配置(具有pge-type=的节点)[应用程序实例])。
mobileADBMobileConfigJSON 如果配置了AMS云服务,请包含ADBMobileConfig.JSON文件。
在编译时使用此插件来配置AMS插件以支持分析。
处理程序应用于AEM App Shell ContentSync配置(具有pge-type=app-instance的节点)
notificationsconfig 提取设备上所需的通知配置。 这些属性是从与应用程序关联的相应推送服务云服务配置中提取的。
将提取云服务的jcr:content节点中的非AEM属性,并将其添加到 pge-notifications-config.json JSON文件,以包含在应用程序内容的www根中。
AEM属性是指具有“cq”、“sling”或“jcr”命名空间的属性。 可以使用content-sync配置节点上的“excludeProperties”属性排除其他属性。
contentsyncconfigcontent 从现有ContentSync配置收集内容。
类型 — 字符串 - contentsyncconfigcontent
路径 — 字符串 — 路径之一:
autoCreateFirstUpdateBeforeImport — 布尔值 — 如果为true,则创建初始 更新 (如果不存在)
autoFillBeforeImport — 布尔值 — 如果为true,则在导入之前更新/填充target配置
configSuffix — 字符串 — 一个字符串,附加到app-content的“phonegap-exportTemplate”属性中指示的路径。 这可用于区分不同的导出模板。 例如,此属性可设置为 "-dev" 表示 "/…/…/…/appconfig-dev" 的 "/…/…/…/appconfig")。
app-assets 包括与应用程序实例关联的所有资产。 此处理程序将包含在指定路径下找到的任何资产,以及应用程序实例的appAssetPath属性引用的任何资产。
类型 — 字符串 — 应用程序资产
路径-字符串 — 应用程序实例下存储应用程序资产的位置的路径
mobileappoffers 为个性化用例引入了新的内容同步处理程序,以渲染目标内容。 “mobileappoffers”处理程序知道如何渲染由内容作者创建的关联目标选件。 mobileappoffers处理程序扩展抽象页面更新处理程序,因此许多属性都相似。 mobileappopers处理程序的详细信息具有以下属性。
mobileappsoffers处理程序扩展mobileappspages处理程序并添加以下属性:
mobileappconfig mobileappconfig内容同步处理程序提供了一种将JSON数据注入MobileAppsConfig.json的方法。 要注册提供程序类,开发人员将在提供程序列表中添加其MobileAppsInfoProvider类。 处理程序将迭代到MobileAppsInfoProviders列表上,并允许提供程序将数据注入到生成的json文件中。 此处理程序支持的属性列表包括:
[]
— 完全符合条件的MobileAppsInfoProviders列表可以为多个mobileappconfig处理程序分别配置一组唯一的提供程序,这些提供程序写入不同的JSON文件。
检查完整性的步骤 清除缓存
调试步骤
记录 通过包上的OSGI日志记录器配置启用ContentSync调试日志记录 com.day.cq.contentsync
这将允许您跟踪运行的处理程序以及它们是否更新了缓存并报告了更新缓存。
要了解管理员和开发人员的角色和职责,请参阅以下资源:
要开始开发AEM Mobile应用程序,请单击 此处.