Programming Android apps in jython

好久不见. 提交于 2020-01-20 13:02:15

问题


The other day I came across a Python implementation called Jython.
With Jython you can write Java applications with Python and compile them to pure Java.

I was wondering: Android programming is done with Java.
So, is it possible to make Android apps with Jython?


回答1:


Jython doesn't compile to "pure java", it compiles to java bytecode - ie, to *.class files. To develop for Android, one further compiles java bytecode to Dalvik bytecode. This means that, yes, Jython can let you use Python for developing Android, subject to you getting it to play nice with the Android SDK (I haven't personally tried this, so I don't know how hard it actually is) - you do need to make sure you don't depend on any Java APIs that Android doesn't provide, and might need to have some of the Android API .class files around when you run jython. Aside from these niggles, your core idea should work - Jython does, indeed, let write code in Python that interacts with anything else that runs on the JVM.




回答2:


As long as it compiles to pure java (with some constraints, as some APIs are not available), but I doubt that python will be of much use in development of android-specific stuff like activities and UI manipulation code.

You also have to take care of application size - that is serious constraint for mobile developement.




回答3:


I specially like Kivy

Scripting Layer for Android (SL4A) brings scripting languages to Android by allowing you to edit and execute scripts and interactive interpreters directly on the Android device.




回答4:


Yes and no. With jython you can use java classes to compile for the JVM. But Android use the DVM (Dalvik Virtual Machine) and the compiled code is different. You have to use tools to convert from JVM code to DVM.




回答5:


Yes, you can.

Test your python code on your computer and, when it is ok, copy to your Android device.

Install Pydroid from Google Play Store and compile your code again inside the application and you will get your App ready and running.

Use pip inside Pydroid to install any dependencies.

PS: You will need to configure your Android device to install APKs from outside Play Store.




回答6:


It's not possible. You can't use jython with android because the DVM doesn't understand it. DVM is not JVM.




回答7:


sadly No.

Mobile phones only have Java ME (Micro Edition) but Jython requires Java SE (Standard Edition). There is no Jython port to ME, and there is not enough interest to make it worth the effort.



来源:https://stackoverflow.com/questions/11120130/programming-android-apps-in-jython

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!