Muchos desarrolladores de juegos hacen exactamente esto.
Android ofrece lo que ellos llaman el NDK para admitir aplicaciones compiladas nativas. Puedes escribir en C ++. Pero hay algunas limitaciones que esta API puede hacer sobre Java.
iOS, por supuesto, ejecuta binarios nativos todo el tiempo. Y Xcode admite el lenguaje C ++. (En realidad, admite algo llamado Objective-C ++, que es un dialecto de C ++ que puede llamar a las API de Cocoa.
- ¿Cuánto más esfuerzo se necesita para crear una aplicación de Android si ya conoce Java?
- ¿Se pueden poner los mismos códigos en Eclipse en Android Studio?
- ¿Los dispositivos Android siguen recibiendo actualizaciones oficiales después de rootearlos?
- ¿Cuál es el mejor lugar para aprender programación de Android en Bhubaneswar?
- Cómo hacer una buena página de registro en Android Studio
Entonces, podría escribir código común en C ++, que podría implementarse en ambos dispositivos.
Por lo general, los desarrolladores escriben una aplicación central portátil que se ejecutará en común en ambas plataformas, y luego escriben una aplicación delgada “envolvente” que interactúa entre el sistema y su aplicación. Este contenedor maneja archivos, audio y otras cosas específicas de la plataforma.
Este enfoque tiene más sentido para las aplicaciones, como los juegos, que crean su propia interfaz de usuario y no intentan parecerse a las aplicaciones estándar de Android o iOS.
Cuando las aplicaciones no siguen las convenciones estándar, los usuarios las consideran de aspecto extraño o barato.
Existen otras soluciones independientes de la plataforma, incluida Xamarin.
Yo personalmente no soy fanático de este enfoque. Creo que las mejores aplicaciones están escritas para explotar la tecnología nativa y el código de portabilidad a veces es menos trabajo que mantener el código independiente de la plataforma.