Arquitectura de apps de Agency Phone
Agency Phone está pensado con la extensibilidad en mente, para que los desarrolladores de servidor puedan crear apps personalizadas que se integren sin fisuras con la interfaz del teléfono. Cada app funciona como un módulo autocontenido con su propio HTML, CSS y JavaScript, y se comunica con el framework del teléfono mediante una API bien definida. Con esta arquitectura puedes construir lo que quieras, desde una app de carreras a un gestor inmobiliario o un sistema de despacho a medida, todo accesible desde el teléfono que los jugadores ya saben manejar.
Montar la estructura de tu app
Para crear una app personalizada, empieza creando una nueva carpeta dentro del directorio de apps de Agency Phone. Tu app necesita un archivo de manifest app.json que defina el nombre, el icono, la descripción y el punto de entrada. El manifest también especifica los permisos que necesita tu app, como acceso a contactos, notificaciones o datos de GPS. Crea tu archivo HTML principal referenciado en el manifest, junto con los archivos CSS y JavaScript que necesite. El framework del teléfono descubre y registra automáticamente las apps que siguen esta estructura.
Usar la API de apps
Agency Phone expone una API de JavaScript que tu app puede usar para interactuar con las funciones del teléfono. Llama a AgencyPhone.getContacts() para acceder a la lista de contactos del jugador, a AgencyPhone.sendNotification() para enviar notificaciones o a AgencyPhone.getPlayerData() para obtener la información actual del jugador desde el framework. La API también ofrece métodos de navegación para cambiar entre pantallas de la app, una API de almacenamiento para persistir datos específicos y hooks de ciclo de vida para saber cuándo tu app se abre, se minimiza o se cierra.
Conectar con la lógica de servidor
La mayoría de apps personalizadas necesitan comunicarse con scripts del servidor para persistencia de datos y operaciones seguras. Usa el sistema de callbacks NUI del teléfono para enviar peticiones desde el JavaScript de tu app a un script Lua del servidor. Registra los handlers del lado del servidor en un recurso acompañante que dependa de Agency Phone, procesa las peticiones con la validación adecuada y devuelve los resultados. Esta separación asegura que la lógica de tu app corre segura en el servidor mientras la UI sigue siendo ágil en el cliente.
Estilos para tu app
Agency Phone ofrece variables CSS y clases de utilidad que coinciden con el tema del teléfono, para que tu app personalizada se vea coherente con las apps integradas. Usa las variables de color para fondos, texto y acentos, de modo que tu app se adapte automáticamente a los temas claro y oscuro. El contenedor del teléfono gestiona el scroll, el tamaño y los safe areas, así que centra tu CSS en el layout del contenido dentro del viewport de la app. Prueba tu app con distintos tamaños de marco de teléfono para asegurarte de que se ve bien en todas las resoluciones.
Publicación y distribución
Cuando tu app esté terminada, empaquétala como un recurso independiente que dependa de Agency Phone. Incluye instrucciones de instalación claras, opciones de configuración y capturas de ejemplo en tu documentación. Si piensas venderla en Tebex, asegúrate de cumplir las directrices de escrow e incluye un vídeo de demostración mostrando la app en acción. Plantéate ofrecer una versión gratuita básica con funciones premium para atraer a más dueños de servidor y generar confianza en tu trabajo de desarrollo antes de que se comprometan a comprar.
