this is a german Web-Mirror of PYTHON.ORG powered by Domainunion AG

Differences between revisions 36 and 37
Revision 36 as of 2022-08-30 09:16:32
Size: 3078
Editor: MalcolmSmith
Comment: BeeWare and Kivy do not have a general-purpose Java-to-Python API: they only allow Java to call Python via a Java interface that the Python code explicitly implements
Revision 37 as of 2022-11-06 16:39:28
Size: 3160
Editor: MalcolmSmith
Comment: Indicate that BeeWare's Android support is now based on Chaquopy, and remove "open-source" column since all projects are now open-source
Deletions are marked like this. Additions are marked like this.
Line 3: Line 3:
||<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&nbsp;Play links || User interface || Android APIs
|| Call&nbsp;Python from Java || Native Python packages || Standalone APK || iOS || Desktop OSs ||
|| '''[[https://beeware.org|BeeWare]]''' is a collection of tools for building native user interfaces. || 3.7 - 3.10 || Yes || None || Native Android || All || Via interface || None || Yes || Yes || Yes ||
|| '''[[https://chaquo.com/chaquopy/|Chaquopy]]''' is a plugin for Android Studio's Gradle-based build system. || 3.8 || Yes || [[https://play.google.com/store/apps/details?id=com.chaquo.python.demo3|Demo]] || Native Android || All || [[https://chaquo.com/chaquopy/doc/current/java.html|Yes]] || [[https://chaquo.com/pypi-7.0/|List]] || 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 Plyer || Via interface || [[https://github.com/kivy/python-for-android/tree/develop/pythonforandroid/recipes|List]] || Yes || Yes || Yes ||
|| '''[[https://www.riverbankcomputing.com/software/pyqtdeploy/intro|pyqtdeploy]]''' is a tool for deploying PyQt applications. || 3.6 || Yes || None || Qt || Some via Qt || No || Some || Yes || Yes || Yes ||
|| '''[[https://www.qpython.com/|QPython]]''' is an on-device script engine and development environment. || 2.7, 3.2, 3.6 || Yes || [[https://play.google.com/store/apps/details?id=org.qpython.qpy|QPython]] || Kivy, SL4A || All via PyJNIus or SL4A || No || [[https://qpypi.qpython.org/search/|List]] || No || No || No ||
|| '''[[https://termux.com/|Termux]]''' is a Linux distribution for Android that ships Python as well as a local build environment || 2.7, 3.6 || Yes || [[https://play.google.com/store/apps/details?id=com.termux|Termux]] <<BR>> [[https://play.google.com/store/apps/details?id=com.termux.api|Termux:API]] || Terminal || Some via Termux:API || No || Any where dependencies are packaged || No || No || No ||
||<style="text-align: center;"|2> '''Project''' ||<style="text-align: center;"-2> '''General''' ||<style="text-align: center;"-4> '''APIs''' ||<style="text-align: center;"-3> '''Build''' ||
|| Python versions ||
Google&nbsp;Play links || User interface || Android APIs || Call&nbsp;Python from Java || Native Python packages || Standalone APK || iOS || Desktop OSs ||
|| '''[[https://beeware.org|BeeWare]]''' is a toolkit for developing cross-platform apps with native user interfaces. Its Android support is based on Chaquopy. ||<style="text-align: left"|2> 3.8 - 3.11 || None ||<style="text-align: left"|2> Native Android ||<style="text-align: left"|2> All ||<style="text-align: left"|2> [[https://chaquo.com/chaquopy/doc/current/java.html|Yes]] ||<style="text-align: left"|2> [[https://chaquo.com/pypi-7.0/|List]] ||Yes || Yes || Yes ||
|| '''[[https://chaquo.com/chaquopy/|Chaquopy]]''' is a plugin for Android Studio's Gradle-based build system. || [[https://play.google.com/store/apps/details?id=com.chaquo.python.demo3|Demo]] || 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 || [[https://play.google.com/store/apps/details?id=org.kivy.showcase|Demo]] || Kivy || All via PyJNIus or Plyer || Via interface || [[https://github.com/kivy/python-for-android/tree/develop/pythonforandroid/recipes|List]] || Yes || Yes || Yes ||
|| '''[[https://www.riverbankcomputing.com/software/pyqtdeploy/intro|pyqtdeploy]]''' is a tool for deploying PyQt applications. || 3.6 || None || Qt || Some via Qt || No || Some || Yes || Yes || Yes ||
|| '''[[https://www.qpython.com/|QPython]]''' is an on-device script engine and development environment. || 2.7, 3.2, 3.6 || [[https://play.google.com/store/apps/details?id=org.qpython.qpy|QPython]] || Kivy, SL4A || All via PyJNIus or SL4A || No || [[https://qpypi.qpython.org/search/|List]] || No || No || No ||
|| '''[[https://termux.com/|Termux]]''' is a Linux distribution for Android that ships Python as well as a local build environment || 2.7, 3.6 || [[https://play.google.com/store/apps/details?id=com.termux|Termux]] <<BR>> [[https://play.google.com/store/apps/details?id=com.termux.api|Termux:API]] || Terminal || Some via Termux:API || No || Any where dependencies are packaged || 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

Google Play links

User interface

Android APIs

Call Python from Java

Native Python packages

Standalone APK

iOS

Desktop OSs

BeeWare is a toolkit for developing cross-platform apps with native user interfaces. Its Android support is based on Chaquopy.

3.8 - 3.11

None

Native Android

All

Yes

List

Yes

Yes

Yes

Chaquopy is a plugin for Android Studio's Gradle-based build system.

Demo

Yes

No

No

Kivy is a cross-platform OpenGL-based user interface toolkit.

2.7, 3.5, 3.6

Demo

Kivy

All via PyJNIus or Plyer

Via interface

List

Yes

Yes

Yes

pyqtdeploy is a tool for deploying PyQt applications.

3.6

None

Qt

Some via Qt

No

Some

Yes

Yes

Yes

QPython is an on-device script engine and development environment.

2.7, 3.2, 3.6

QPython

Kivy, SL4A

All via PyJNIus or SL4A

No

List

No

No

No

Termux is a Linux distribution for Android that ships Python as well as a local build environment

2.7, 3.6

Termux
Termux:API

Terminal

Some via Termux:API

No

Any where dependencies are packaged

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 (last edited 2024-02-07 13:18:35 by MalcolmSmith)

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