The Screens player provides offline support for the channels by leveraging the ContentSync technology.
The players use a local http server to serve the unzipped content.
When a channel is configured to run online, the player serves the channel-resources by accessing the AEM server but when the channel is configured to run offline, the player serves the channel-resources from a local http server.
The workflow for the process is as follows:
The ContentSync uses update handlers to parse and collect all necessary pages and assets for a specific project. AEM Screens uses the following update handlers:
Type | Description | Options |
channels | collects a channel | extension: extension of the resource to collect [pathSuffix='']: suffix to add to the channel path |
clientlib | collect the specified client library | [extension='']: can be either css or js, to collect only the former, or only the latter |
assetrenditions | collect the asset renditions | [renditions=[]]: list of renditions to collect. Defaults to the original rendition |
copy | copy the specified structure from path |
Follow the steps below to test the ContentSync configuration:
https://localhost:4502/libs/cq/contentsync/content/console.html
Follow the steps below to enable offline config for a channel:
Inspect the channel content and check if it is requested from an AEM Instance (Online).
Navigate to the channel dashboard and click … in the CHANNEL INFORMATION Panel to change the properties.
Navigate to the channel properties and make sure the checkbox is disabled under the Channel tab. Click Save & Close.
Before content is properly deployed to the device, click the Update Offline Content.
The Offline status under PROPERTIES also updates accordingly.
Inspect the channel content and check if it is requested from the local Player-Cache.
To learn more about the template for custom offline resource handlers and the minimum requirements in the pom.xml
for that specific project, refer to Template for Custom Handlers in Developing a Custom Component for AEM Screens.