Adobe recomienda el uso del Editor de SPA para proyectos que requieren una representación de cliente basada en el marco de aplicaciones de una sola página (por ejemplo, React). Más información.
Las aplicaciones móviles deben poder utilizar todo el contenido de AEM según sea necesario para ofrecer la experiencia de aplicación de destino.
Esto incluye el uso de recursos, contenido del sitio, contenido de CaaS (sobre el aire) y contenido personalizado que puede tener su propia estructura.
El contenido de Over-the-Air puede provenir de cualquiera de los elementos anteriores a través de los controladores ContentSync. Se puede utilizar para empaquetar paquetes y envíos por lotes a través de zips, así como para mantener las actualizaciones de dichos paquetes.
Existen tres tipos principales de material que ofrece Content Services:
Las colecciones de recursos son construcciones AEM que contienen referencias a otras colecciones.
Una colección de recursos se puede exponer a través de Content Services. Al llamar a una colección de recursos en una solicitud, se devuelve un objeto que es una lista de los recursos, incluidas sus direcciones URL. Se accede a los recursos a través de una dirección URL. La dirección URL se proporciona en un objeto. Por ejemplo:
Un valor clave de Content Services es la capacidad de devolver recursos optimizados para el dispositivo. Esto reduce las necesidades de almacenamiento del dispositivo local y mejora el rendimiento de la aplicación.
La optimización de recursos será una función del lado del servidor, basada en la información suministrada en la solicitud de API. Siempre que sea posible, las representaciones de recursos deben almacenarse en caché para que solicitudes similares no requieran una regeneración de la representación de recursos.
El flujo de trabajo de recursos es el siguiente:
Referencia de recursos disponible en AEM lista para usar
Crear entidad de referencia de recursos según su modelo
Editar entidad
El diagrama siguiente muestra el Flujo de trabajo de referencia de recursos:
Content Services proporciona acceso a AEM recursos gestionados a los que no se puede hacer referencia mediante otro contenido AEM.
Un usuario existente de AEM Sites y Assets está utilizando AEM Assets para gestionar todo su material digital para todos los canales. Están desarrollando una aplicación móvil nativa y necesitan utilizar varios recursos que administra AEM Assets. Por ejemplo logotipos, imágenes de fondo, iconos de botón, etc.
Actualmente, estos se distribuyen alrededor del repositorio de recursos. Los archivos a los que debe hacer referencia la aplicación se encuentran en:
Dejemos a un lado los pasos de cómo la página está disponible a través de la API por ahora (estará cubierta por la descripción de la interfaz de usuario AEM) y supongamos que se ha realizado. Se han creado y agregado entidades de recursos al espacio "appImages". Se crearon carpetas adicionales en el espacio para fines de organización. Por lo tanto, las entidades de recursos se almacenan en el JCR AEM como:
Un desarrollador de aplicaciones puede obtener una lista de los recursos disponibles, recuperando las entidades de recursos. El extremo de espacio de Content Services puede proporcionar esa información a través del SDK de la API de servicio web.
El resultado sería un objeto en formato JSON que proporcionaría una lista de los recursos de la carpeta "icons".
El JSON proporciona una URL para cada imagen, generada por Content Services para la imagen.
Para obtener el binario de la imagen "carrito", se utiliza de nuevo la biblioteca cliente.
El contenido HTML es necesario para los clientes que necesitan mantener el diseño del contenido. Esto resulta útil para las aplicaciones nativas que utilizan un contenedor web (como una vista web de Cordova) para mostrar el contenido.
AEM Content Services podrá proporcionar contenido HTML a la aplicación móvil mediante la API. Los clientes que deseen exponer AEM contenido como HTML crearán una entidad de página HTML que apuntará a la fuente de contenido AEM.
Se consideran las siguientes opciones:
El contenido independiente del canal es una forma de exponer construcciones de contenido AEM, como páginas, sin preocuparse por el diseño, los componentes u otra información específica del canal.
Estas entidades de contenido se generan utilizando un modelo de contenido para traducir las estructuras de AEM a un formato JSON. Los datos JSON resultantes contienen información sobre los datos del contenido, que se desvinculan del repositorio de AEM. Esto incluye devolver metadatos y vínculos de referencia AEM a los recursos, así como las relaciones entre las estructuras de contenido, incluida la jerarquía de entidades.
El contenido puede acceder a la aplicación de varias formas.
GET de contenido ZIPS mediante AEM Over-the-Air
Los controladores de sincronización de contenido pueden actualizar el paquete zip directamente o llamando a los procesadores de contenido existentes
GET del contenido directamente a través de los procesadores de contenido