Avanzado
Después
- Descomprime y abre la carpeta en IntelliJ IDEA o Android Studio (es un proyecto Gradle normal).
- Ejecuta ./gradlew lwjgl3:run (gradlew.bat en Windows) para ver la app en el escritorio.
- Edita la primera ventana en core/src/main/java — todas las plataformas ejecutan ese mismo código.
- El README del ZIP lista los comandos de ejecución y de release de cada plataforma elegida.
Qué hay en el ZIP
Un módulo compartidocore contiene todas las pantallas y toda la lógica. Los módulos de plataforma solo lo inician.
Launchers listosLaunchers de escritorio (Windows, macOS y Linux), Android, iOS y web conectados a los backends de CrossFly, con las tareas de build de cada uno.
Permisos incluidosCada biblioteca trae sus permisos de Android y sus textos de uso de iOS, para que la primera ejecución no se detenga por una declaración faltante.
Versiones fijadasTodos los artefactos de CrossFly en la misma versión, más el Gradle wrapper — nada que instalar salvo un JDK.
Bibliotecas que puedes añadir
Cada biblioteca es una carpeta en el repositorio del framework, compilada sola y junto a todas las demás antes de aparecer aquí.
Acceso biométrico
dev.crossfly.device.Biometry: huella y rostro (BiometricPrompt en Android, Face ID / Touch ID en iOS).
Bluetooth
dev.crossfly.device.bluetooth: descubrimiento y conexiones, con los permisos de Android 12+ y BlueCove en escritorio.
Cámara y códigos de barras
dev.crossfly.device.Camera y CameraBarcode: fotos y lectura de QR/códigos de barras. En escritorio usa la webcam.
Web view en escritorioExperimental
WebContainer en escritorio, con el WebView de JavaFX. Android e iOS usan el web view del sistema y no necesitan nada.
CI en GitHub ActionsExperimental
Un workflow que compila cada plataforma elegida en cada push y pull request, y ejecuta las pruebas si las hay.
Pruebas unitarias (JUnit 5)
JUnit 5 en el módulo core, con una primera prueba. Se ejecuta con gradlew core:test.
Ubicación (GPS)
dev.crossfly.device.Location: posición puntual y seguimiento continuo, con los permisos que pide cada sistema.
Mapas
dev.crossfly.map: OpenStreetMap sin clave, y Google Maps en Android cuando proporcionas una clave de API.
Grabación de vídeo en escritorioExperimental
crossfly-media: graba vídeo y audio en escritorio con FFmpeg, cuyas bibliotecas nativas para cada sistema agrandan bastante el build de escritorio.
Prueba de pantalla
Abre las pantallas, las recorre y compara su diseño con una referencia grabada. Se ejecuta con gradlew lwjgl3:run -Ptest; sale con 1 cuando algo cambió.
Voz a texto
Dictado con el reconocedor del sistema en Android e iOS, y un motor sin conexión en escritorio.
CrossFly SyncFeed privado
Sincronización offline-first de una base SQLite local con el servidor CrossFly Sync, en escritorio y Android.
Texto a voz
Lee texto en voz alta: las voces del sistema en Android, iOS y la web, libgdx-tts en escritorio.
Más bibliotecas con el tiempo
La lista de arriba se lee del starter que acompaña al framework. Una biblioteca se añade allí como una carpeta y aparece en esta página con la siguiente actualización — incluidas las que esperan un release de CrossFly, que aparecen marcadas con la versión que necesitan.