¿Puedo programar para android usando cualquier lenguaje JVM?

¿Puedo usar otros lenguajes JVM aparte de Java (por ejemplo, jruby, jython, clojure) para programar para android, o es sólo java?

Se hizo una pregunta similar hace más de un año, pero no estaba seguro de si había habido algún cambio desde entonces.

Echa un vistazo a estos enlaces:

  • Scala 2.8 en Android
  • Ejemplos de Android en Scala
  • Clojure en Android
  • Ruboto – Una aplicación IRB para JRuby en Android
  • Android Scripting (Python, Perl, JRuby, Lua, BeanShell, JavaScript, Tcl)

Sin embargo, no conozco ninguna aplicación destacada que haya sido codificada en ninguno de estos idiomas. Los ejemplos que he visto caen más en la categoría de "prueba de concepto". Aunque el factor cool es alto, todavía no veo estos idiomas como una herramienta viable para los desarrolladores de Android graves. Me encantaría ver que alguien me pruebe mal aunque!

Parece que Scala es el más cercano a llegar allí ahora mismo.

No estoy seguro de cómo funciona el lenguaje JVM, pero realmente pienso que Scala es la que podría usar para un serio proyecto Android.

Por supuesto, tiene algún problema (como Google Maps Android API no es utilizable sin alguna solución), pero funciona muy bien con el SDK de Android por defecto.

Personalmente, uso Scala para desarrollar mi aplicación Android (Maidroid Reminder), que ya se ha descargado alrededor de 5000 veces de acuerdo a la estadística de Android Market.

No es una aplicación "prominente" por supuesto, pero utiliza muchas características de Android SDK, como ContentProvider / Broadcast Receiver / MediaPlayer …. etc, y funciona muy bien y me sentí mucho más divertido que la codificación en Java.

Y lo mejor de usar Scala para desarrollar aplicaciones Android es que el usuario no necesita instalar ningún runtime como las necesidades de Android Scripting Environment!

Simplemente suelte su archivo APK, y el usuario podría instalar su aplicación utilizando Android Market o ADB.

Si alguien está interesado en cómo una aplicación de Android escrita en Scala parece, puede explorar el código fuente en GitHub .

De un poco de búsqueda parece que ya existe un entorno de secuencias de comandos JRuby para la plataforma Android.

Actualmente la mayoría de los lenguajes dinámicos funcionan mal en el Android Dalvic JVM. Se ejecutarán pero con más CPU y uso de memoria de lo que probablemente desee. He oído que están trabajando en mejorar eso sin embargo.

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.