Avançado
Depois
- Descompacte e abra a pasta no IntelliJ IDEA ou no Android Studio (é um projeto Gradle comum).
- Rode ./gradlew lwjgl3:run (gradlew.bat no Windows) para ver o app no desktop.
- Edite a primeira janela em core/src/main/java — todas as plataformas rodam esse mesmo código.
- O README do ZIP lista os comandos de execução e de release de cada plataforma escolhida.
O que vem no ZIP
Um módulo compartilhadoO core guarda todas as telas e toda a lógica. Os módulos de plataforma só o iniciam.
Launchers prontosLaunchers de desktop (Windows, macOS e Linux), Android, iOS e web ligados aos backends do CrossFly, com as tarefas de build de cada um.
Permissões incluídasCada biblioteca traz suas permissões do Android e seus textos de uso do iOS, para a primeira execução não parar numa declaração faltando.
Versões fixadasTodos os artefatos do CrossFly na mesma versão, mais o Gradle wrapper — nada a instalar além de um JDK.
Bibliotecas que você pode incluir
Cada biblioteca é uma pasta no repositório do framework, compilada sozinha e junto com todas as outras antes de aparecer aqui.
Login por biometria
dev.crossfly.device.Biometry: digital e reconhecimento facial (BiometricPrompt no Android, Face ID / Touch ID no iOS).
Bluetooth
dev.crossfly.device.bluetooth: descoberta e conexões, com as permissões do Android 12+ e o BlueCove no desktop.
Câmera e código de barras
dev.crossfly.device.Camera e CameraBarcode: fotos e leitura de QR/código de barras. No desktop usa a webcam.
Web view no desktopExperimental
WebContainer no desktop, pelo WebView do JavaFX. Android e iOS usam o web view do sistema e não precisam de nada.
CI no GitHub ActionsExperimental
Um workflow que compila cada plataforma escolhida a cada push e pull request, e roda os testes quando houver.
Testes unitários (JUnit 5)
JUnit 5 no módulo core, com um primeiro teste. Rode com gradlew core:test.
Localização (GPS)
dev.crossfly.device.Location: posição avulsa e rastreamento contínuo, com as permissões que cada sistema exige.
Mapas
dev.crossfly.map: OpenStreetMap sem chave, e Google Maps no Android quando você fornece uma chave de API.
Gravação de vídeo no desktopExperimental
crossfly-media: grava vídeo e áudio no desktop via FFmpeg, cujas bibliotecas nativas para todos os sistemas deixam o build do desktop bem maior.
Teste de tela
Abre as telas, toca nelas e compara o layout com uma referência gravada. Rode com gradlew lwjgl3:run -Ptest; sai com 1 quando algo mudou.
Voz para texto
Ditado pelo reconhecedor do sistema no Android e no iOS, e um motor offline no desktop.
CrossFly SyncFeed privado
Sincronização offline-first de um banco SQLite local com o servidor CrossFly Sync, no desktop e no Android.
Texto para voz
Lê texto em voz alta: as vozes do sistema no Android, no iOS e na web, libgdx-tts no desktop.
Mais bibliotecas com o tempo
A lista acima é lida do starter que acompanha o framework. Uma biblioteca entra lá como uma pasta e aparece nesta página na atualização seguinte — inclusive as que esperam um release do CrossFly, que aparecem marcadas com a versão de que precisam.