Primeros pasos con la aplicación de referencia de iOS

La aplicación de referencia de iOS muestra una arquitectura Swift moderna con lógica empresarial modularizada, scripts compatibles con CI y una experiencia de reunión basada en la API de vídeo de Vonage. Está diseñada para que los ingenieros de iOS puedan validar las decisiones de UX, la cobertura de pruebas y la automatización.

Vonage

Qué incluye

La aplicación de referencia de iOS proporciona un flujo de reuniones completo y bloques de construcción de conferencias comunes:

  • A página de aterrizaje donde los usuarios pueden crear y unirse a salas de reuniones.
  • A sala de espera para previsualizar los dispositivos de audio y vídeo y establecer un nombre de visualización antes de unirse.
  • A sala de vídeo que admite hasta 25 participantes.
  • A página posterior a la llamada para volver a la página de inicio, volver a entrar en la sala y mostrar los archivos disponibles.
  • Tema configurable impulsado por un semantics.json que genera la correspondiente semántica del color xcassets en el VERACommonUI cuando se ejecuta el generar-app-tema.py script en python.

Arquitectura

La aplicación de referencia de iOS se implementa como un conjunto de frameworks Swift:

  • VERAApp - Objetivo principal de la aplicación y raíz de composición. Vincula las dependencias, la navegación y la configuración.
  • VERACore - Interfaz de usuario y lógica de negocio para las vistas principales.
  • VERAChat - Funcionalidad de chat durante las reuniones.
  • VERAVonageChatPlugin - Adaptador que conecta el chat a las interfaces del plugin.
  • VERAVonageCallKitPlugin - Plugin de integración con CallKit para que las llamadas se coordinen con el sistema iOS.
  • VERADominio - Modelos de dominio y entidades compartidos.
  • VERAConfiguración - Especificación de la configuración de la aplicación, incluidas las banderas generadas a partir de app-config.json.
  • VERACommonUI - Componentes de interfaz de usuario, activos y recursos temáticos compartidos.
  • VERAVonage - Integración del SDK de vídeo de Vonage.

La aplicación se basa en un backend ligero para generar ID de sesión y fichas. La URL del backend se configura en el DependencyContainer.swift en el módulo VERAApp.

Algunos marcos son universales, lo que permite realizar pruebas rápidas en objetivos macOS y mejora la reutilización en todas las plataformas Apple.

Características principales

La experiencia de reunión en la aplicación de referencia de iOS incluye:

  • Aterrizaje y salas de espera para que los usuarios puedan unirse con los dispositivos y la identidad correctos.
  • Detección activa de altavoces.
  • Responsable de diseño con opciones para las vistas de cuadrícula y de altavoz activo.
  • Diseño de vídeo dinámico que reacciona ante las nuevas incorporaciones, oculta las fichas para conservar el ancho de banda y asciende al siguiente participante activo cuando alguien se marcha.
  • Lista de participantes con indicadores de activación/desactivación de audio.
  • Integración de ShareLink para compartir enlaces de reuniones mediante la hoja para compartir de iOS.
  • Integración de CallKit para que las llamadas se coordinen con la interfaz de usuario y los comportamientos de llamada a nivel de sistema.
  • Funciones configurables basado en el archivo app-config.json que declara los módulos de xcworkspace y las funciones activas.
  • Personalización de temas utilizando semantics.json y un script que genera activos de color en VERACommonUI.
  • Apoyo a las pruebas utilizando el marco Swift Testing para pruebas unitarias, de integración e instantáneas.

Estas funciones se implementan utilizando las mejores prácticas de escalabilidad, seguridad y experiencia de usuario específica de iOS.

Personalización

La aplicación de referencia de iOS permite personalizar las funciones y la interfaz de usuario mediante archivos de configuración y secuencias de comandos.

Configuración de funciones

La configuración se gestiona a través de un app-config.json que se puede mover al archivo VERA/Config carpeta.
Cuando ejecute la función generate-app-config.py script de Python en el VERA/Scripts los parámetros especificados en app-config.json regenerar el AppConfig.swift del archivo VERAConfiguration módulo.

Algunas de las características declaradas en el archivo JSON aún no se han implementado.
Una vez que el app-config.json está configurado, el tuist generate lee el archivo JSON y configura el proyecto añadiendo únicamente los módulos necesarios.

Personalización del tema y la interfaz de usuario

Puede personalizar los colores de la aplicación editando el archivo semantics.json valores de los esquemas de color claro y oscuro y luego ejecutando el programa generate-app-theme.py en el VERA/Scripts carpeta.
Esto genera los recursos xcasset con los valores RGB especificados en el campo VERACommonUI módulo.

Vonage

Próximos pasos

Para instalar, configurar y ejecutar la aplicación de referencia de iOS, siga las instrucciones del archivo README del repositorio: