Differences between revisions 19 and 20
Revision 19 as of 2018-01-10 00:41:25
Size: 2728
Editor: MalcolmSmith
Comment: Improve table layout
Revision 20 as of 2018-01-10 00:44:12
Size: 2729
Editor: DavidBoddie
Comment: Suppressed an automatic link.
Deletions are marked like this. Additions are marked like this.
Line 16: Line 16:
 * 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.  * 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.

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

Python 2
Python 3

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

Demo

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

Python 2
Python 3

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.

Android (last edited 2024-02-07 13:18:35 by MalcolmSmith)

Unable to edit the page? See the FrontPage for instructions.