web-dev-qa-db-fra.com

Programmation d'applications Android en jython

L'autre jour, je suis tombé sur une implémentation Python appelée Jython.
Avec Jython, vous pouvez écrire des applications Java avec Python et les compiler en Java pur. 

Je me demandais: la programmation Android est faite avec Java.
Alors, est-il possible de créer des applications Android avec Jython? 

54
mid_kid

Jython ne compile pas en "Java pur", il compile en bytecode Java - c'est-à-dire en *.class fichiers. Pour développer pour Android, on compile davantage le bytecode Java en bytecode Dalvik. Cela signifie que, oui, Jython peut vous laisser utiliser Python pour développer Android, à condition de le faire jouer à Nice avec le SDK Android (je n'ai pas personnellement essayé cela, je ne sais en fait) - vous do devez vous assurer que vous ne dépendez pas des API Java que Android ne fournit pas, et pourrait devez disposer de certains fichiers de l'API Android .class lorsque vous exécutez Jython. En dehors de ces inconvénients, votre idée de base devrait fonctionner: Jython permet, en effet, d’écrire du code en Python qui interagit avec tout ce qui s’exécute sur la JVM.

41
lvc

Tant qu'il compile en Java pur (avec certaines contraintes, certaines API n'étant pas disponibles), je doute que python soit d'une grande utilité pour le développement de choses spécifiques à Android, telles que des activités et du code de manipulation de l'interface utilisateur. 

Vous devez également prendre en compte la taille de l’application - c’est une contrainte sérieuse pour le développement mobile.

4

J'aime spécialement Kivy

Scripting Layer pour Android (SL4A) apporte les langages de script à Android en vous permettant d’éditer et d’exécuter des scripts et des interpréteurs interactifs directement sur le périphérique Android.

2
Freeman

Oui et non. Avec jython, vous pouvez utiliser les classes Java pour compiler pour la machine virtuelle Java. Mais Android utilise le DVM (Dalvik Virtual Machine) et le code compilé est différent. Vous devez utiliser des outils pour convertir du code JVM en DVM.

1
user3629142

Oui, vous pouvez.

Testez votre code python sur votre ordinateur et, quand tout va bien, copiez-le sur votre appareil Android.

Installez Pydroid à partir de Google Play Store et compilez votre code à nouveau dans l'application pour que votre application soit prête et opérationnelle.

Utilisez pip dans Pydroid pour installer des dépendances éventuelles.

PS: Vous devrez configurer votre appareil Android pour installer les fichiers APK depuis l’extérieur du Play Store.

0
Fernando Lima