Size: 2665
Comment: Added BeeWare - see https://mail.python.org/pipermail/mobile-sig/2018-January/000187.html
|
Size: 2735
Comment: Transposed the table, ordered rows alphabetically.
|
Deletions are marked like this. | Additions are marked like this. |
Line 3: | Line 3: |
|| || '''[[https://chaquo.com/chaquopy/|Chaquopy]]''' is a plugin for Android Studio's Gradle-based build system. || '''[[https://kivy.org/docs/guide/android.html|Kivy]]''' is a cross-platform OpenGL-based user interface toolkit. || '''[[http://www.qpython.com/|QPython]]''' is an on-device script engine and development environment. || '''[[https://beeware.org|BeeWare]]''' is a collection of tools for building native user interfaces. || || '''General''' || || || || || || Python versions || 2.7, 3.6 || 2.7, 3.5, 3.6 || 2.7, 3.2 || 3.4+ || || Open-source || No || Yes || Yes || Yes || || Google Play links || [[https://play.google.com/store/apps/details?id=com.chaquo.python.demo|Python 2]], [[https://play.google.com/store/apps/details?id=com.chaquo.python.demo3|Python 3]] || [[https://play.google.com/store/apps/details?id=org.kivy.showcase|Demo]] || [[https://play.google.com/store/apps/details?id=org.qpython.qpy|Python 2]], [[https://play.google.com/store/apps/details?id=org.qpython.qpy3|Python 3]] || None || || '''APIs''' || || || || || || User interface || Native Android || Kivy || Kivy, SL4A || Native Android || || Other Android APIs || All || All via PyJNIus, or some via Plyer || All via PyJNIus, or some via SL4A || All || || Java‑to‑Python integration || Yes || No || No || Yes || || 3rd party libraries || Pure-Python and selected native || Pure-Python and selected native || Pure-Python and selected native || Pure Python, plus any Java library || || '''Build''' || || || || || || Standalone Android APK || Yes || Yes || No || Yes || || iOS || No || Yes || No || Yes || || Desktop OSs || No || Yes || No || Yes || |
||<style="text-align: center;"|2> '''Project''' ||<style="text-align: center;"-3> '''General''' ||<style="text-align: center;"-4> '''APIs''' ||<style="text-align: center;"-3> '''Build''' || || Python versions || Open-source || Google Play links || User interface || Other Android APIs || Java‑to‑Python integration || 3rd party libraries || Standalone Android APK || iOS || Desktop OSs || || '''[[https://beeware.org|BeeWare]]''' is a collection of tools for building native user interfaces. || 3.4+ || Yes || None || Native Android || All || Yes || Pure Python, plus any Java library || Yes || Yes || Yes || || '''[[https://chaquo.com/chaquopy/|Chaquopy]]''' is a plugin for Android Studio's Gradle-based build system. || 2.7, 3.6 || No || [[https://play.google.com/store/apps/details?id=com.chaquo.python.demo|Python 2]], [[https://play.google.com/store/apps/details?id=com.chaquo.python.demo3|Python 3]] || Native Android || All || Yes || Pure-Python and selected native || Yes || No || No || || '''[[https://kivy.org/docs/guide/android.html|Kivy]]''' is a cross-platform OpenGL-based user interface toolkit. || 2.7, 3.5, 3.6 || Yes || [[https://play.google.com/store/apps/details?id=org.kivy.showcase|Demo]] || Kivy || All via PyJNIus, or some via Plyer || No || Pure-Python and selected native || Yes || Yes || Yes || || '''[[http://www.qpython.com/|QPython]]''' is an on-device script engine and development environment. || 2.7, 3.2 || Yes || [[https://play.google.com/store/apps/details?id=org.qpython.qpy|Python 2]], [[https://play.google.com/store/apps/details?id=org.qpython.qpy3|Python 3]] || Kivy, SL4A || All via PyJNIus, or some via SL4A || No || Pure-Python and selected native || No || No || No || |
There are several ways to use Python on Android. The following table summarizes those projects which are currently active:
Project |
General |
APIs |
Build |
|||||||
Python versions |
Open-source |
Google Play links |
User interface |
Other Android APIs |
Java‑to‑Python integration |
3rd party libraries |
Standalone Android APK |
iOS |
Desktop OSs |
|
BeeWare is a collection of tools for building native user interfaces. |
3.4+ |
Yes |
None |
Native Android |
All |
Yes |
Pure Python, plus any Java library |
Yes |
Yes |
Yes |
Chaquopy is a plugin for Android Studio's Gradle-based build system. |
2.7, 3.6 |
No |
Native Android |
All |
Yes |
Pure-Python and selected native |
Yes |
No |
No |
|
Kivy is a cross-platform OpenGL-based user interface toolkit. |
2.7, 3.5, 3.6 |
Yes |
Kivy |
All via PyJNIus, or some via Plyer |
No |
Pure-Python and selected native |
Yes |
Yes |
Yes |
|
QPython is an on-device script engine and development environment. |
2.7, 3.2 |
Yes |
Kivy, SL4A |
All via PyJNIus, or some via SL4A |
No |
Pure-Python and selected native |
No |
No |
No |
In addition, there are a number of projects which are inactive or incomplete:
- SL4A (Scripting Layer for Android), originally named ASE (Android Scripting Environment), is a set of "facades" which expose a greatly-simplified subset of the Android API. The project was originally developed within Google, but is no longer supported by them. However, a fork of the library is distributed with QPython.
PySide (the Python binding for the Qt toolkit) has some preliminary support for Android.
Although Android's primary programming language is Java, there is no known port of Jython to the platform. Android support in BeeWare is achieved using VOC, a tool that compiles Python source code to Java class files. This allows Python code to be executed as a native binary on the JVM.