Esta página fue traducida automáticamente del portugués y puede contener errores. La versión en portugués es la canónica.
iOS / iPadOS (RoboVM) 🍎
El destino iOS exige macOS + Xcode. La toolchain RoboVM hace AOT (Java → código nativo ARM).
Ejecutar
gradlew :ios:launchIPhoneSimulator
El IOSLauncher crea la aplicación: new IOSApplication(new Main(true, getCommandline()), configuration).
Device.platform será IPHONE o IPAD.
Info.plist — permisos y metadatos
A diferencia de Android (permiso en runtime), en iOS las claves de uso van en el Info.plist:
- descripciones de uso de cámara, ubicación, Bluetooth, micrófono (obligatorias, si no el app es rechazado);
- iconos y launch screen.
⚠️ Puntos sensibles
WKWebView:evaluateJavaScriptestá restringido — el puente JS↔Java delWebContaineres más limitado que en Android/desktop.- Cuenta de desarrollador Apple + provisioning profile son necesarios para ejecutar en dispositivo real (el simulador no lo exige).
- El build AOT es lento — un motivo más para desarrollar en el desktop y solo validar en iOS.
Buenas prácticas
- Rellena todas las claves de uso en el
Info.plistantes de enviar (el rechazo por esto es común). - Prueba en el simulador temprano; deja el dispositivo real para la validación final (provisioning).
Errores comunes
- Faltar una clave de uso en el
Info.plist(crash al acceder al recurso, o rechazo en la App Store). - Asumir
evaluateJavaScriptcompleto en elWKWebView(está restringido).
Ver también
¿Te resultó útil esta página?¡Gracias por tu opinión!