Saltar al contenido
CrossFly es 100% open sourceSíguenos en GitHub
CrossFlyCrossFly
Empezar

Esta página fue traducida automáticamente del portugués y puede contener errores. La versión en portugués es la canónica.

Build, firma y distribución 🖥️🤖🍎🌐

El final del pipeline, por destino. Cada launcher tiene su build.gradle; la toolchain es Java 17.

Tasks y artefactos por destino

Destino Build mainClassName Artefacto
🖥️ Desktop gradlew :lwjgl3:run (dev) / jar / instalador dev.crossfly.lwjgl3.Lwjgl3Launcher jar / instalador nativo
🤖 Android gradlew :android:installDebug / assembleRelease AndroidLauncher APK / AAB
🍎 iOS gradlew :ios:launchIPhoneSimulator / generar .ipa dev.crossfly.IOSLauncher .ipa
🌐 Web gradlew :web:webBundle (alias dist) dev.crossfly.web.WebLauncher bundle estático

Firma

Destino Firma
🤖 Android keystore → firma el .aab/APK release
🍎 iOS certificado + provisioning profile → firma el .ipa
🖥️ Desktop firma del instalador según el SO (opcional)
🌐 Web no hay firma — es contenido estático

Distribución

  • 🤖 Android → Google Play (AAB) o APK directo.
  • 🍎 iOS → App Store / TestFlight (vía Xcode/Transporter).
  • 🖥️ Desktop → instaladores nativos (jpackage/jlink) o jar ejecutable.
  • 🌐 Web → hospeda el contenido de web/build/webapp/ en cualquier servidor estático.

Checklist de release

  • Probado en el desktop y en el destino real (ver Pruebas).
  • Responsividad validada en pantallas/densidades (ver Responsividad).
  • Permisos declarados (Android Manifest / iOS Info.plist).
  • Recursos no disponibles por plataforma tratados (ver Matriz).
  • Firma configurada (keystore / provisioning).
  • Iconos, launch screen, número de versión/build.
  • Capturas de tienda generadas (Main.getScreenShot(true).toPng(...)).

Prerrequisitos por destino

  • 🖥️ Desktop: JDK 17; en macOS, -XstartOnFirstThread.
  • 🤖 Android: Android SDK + build tools.
  • 🍎 iOS: macOS + Xcode + cuenta de desarrollador Apple.
  • 🌐 Web: servidor de archivos estáticos.

Errores comunes

  • Enviar iOS sin claves de uso en el Info.plist (rechazo).
  • Publicar APK cuando la Play Store exige AAB.
  • Hospedar el bundle web sin servir los assets//assets.txt junto.

Ver también

¿Te resultó útil esta página?