Tienes algunas opciones:
- Puerto una máquina virtual / tiempo de ejecución a la plataforma. De la misma manera que puede ejecutar una JVM en Mac, Windows, Linux o lo que sea, puede hacer lo mismo en un teléfono inteligente. Java 9 se ejecuta tanto en iOS como en Android.
- Haga un “puente” que es cuando escribe un código en el idioma “extranjero”, puede llamar a funciones escritas en un idioma diferente. Un ejemplo de esto es JNI, que le permite llamar a funciones C desde Java, significa que puede hacer que una función C muestre un diálogo nativo de iOS, luego llamar a esa función desde Java y luego hacer eso para * todo *.
- Encuentre puntos en común: tanto Android como iOS tienen vistas web integradas, por lo que si escribe en JavaScript, se ejecuta en ambos.
- Deje que alguien más lo haga por usted , como Xamarin, que imagino que utiliza una combinación de 1. y 2. Tenga una máquina virtual para hacer la mayor parte del trabajo y un puente para las cosas que desea que sean nativas de la plataforma. .