¿Puedo hacer una aplicación para Android con Python?

La inmensa y variada usabilidad de Python lo convierte en uno de los mejores lenguajes para aprender y experimentar. La mayoría de los principiantes en la programación tienden a empezar con Python basándose en lo que uno puede hacer con él. Python tiene diferentes bibliotecas, y puedes usarlas para una variedad de propósitos. Es posible que hayas oído hablar de NumPy, Keras, entre otros para la Ciencia de Datos. Un caso similar aplica en caso de que quieras construir aplicaciones para Android con Python. Además, también puedes utilizar herramientas como Beware y ver resultados similares si vas a desplegar tus aplicaciones en la Play Store y probarlas en tu smartphone Android.

Android Studio, entre otras herramientas de desarrollo Android, hace un uso intensivo de Java y lenguajes similares para hacer aplicaciones para el ecosistema Android. Puedes utilizar Python para fines similares, ya que las herramientas anteriores traducen el código Python en bytecode del sistema y luego en código similar a Java. El framework que utilizarías para el desarrollo de aplicaciones Android con Python sería el framework Kivy.

La mayoría de los proyectos y librerías de terceros te ayudarían a escribir código en Python, y lo desarrollarían a bytecode y luego a Java como se ha mencionado. Pero en algunos casos, puedes escribir y ejecutar directamente en dispositivos Android, con herramientas como py4a y sl4a. Además, también se puede usar Python para gráficos en móviles hasta cierto punto con Pygame.

Todos estos frameworks, librerías son herramientas para ayudarte a desarrollar código para Python que juegue bien con el ecosistema móvil de Android, lo que significa más o menos traducido y funcionando como un experimento para trabajar en dispositivos Android. Por lo tanto, estas herramientas y métodos son, en el mejor de los casos, improvisados y experimentales (lo que no significa que no funcionen). Esto significa que las aplicaciones que desarrolles pueden acabar teniendo muchos más problemas, y con poco soporte para solucionarlos ya que Python no tiene todavía su función de desarrollo para Android.

Las aplicaciones que desarrolles con Python no tendrían el mismo rendimiento que cuando se desarrollan de forma nativa con herramientas de desarrollo dedicadas a Android. Esto se debe a que primero está traduciendo sus variables en bytecode comprensible para la máquina y luego en el sistema Java de Android. Lo ideal es que se desarrolle directamente para el sistema operativo Android. Te enfrentarás a estos problemas con cualquier herramienta, no sólo con Python si su marco de trabajo por defecto y las bibliotecas adicionales no soportan directamente el desarrollo de Android.

Aparte de las herramientas mencionadas anteriormente, Briefcase, Beware, VOC, entre otras, son las herramientas que pueden ser útiles si quieres desarrollar una aplicación Android con Python. Android no es amigable con Python porque el sistema operativo no tiene ningún compilador para él. Sin embargo, Android es amigable con Java debido al compilador JVM codificado en el sistema. Por lo tanto, si bien se pueden crear aplicaciones para Android, no es la mejor manera de seguir adelante con el desarrollo de alguna aplicación seria. Si usted está trabajando en el desarrollo de Python y quiere ver lo que puede hacer con Android o para fines académicos, es un método improvisado para probar y utilizar aplicaciones.