python-for-android

python-for-android.svg?branch=develop

badge.svg?branch=develop

badge.svg?branch=develop&kill_cache=1

badge.svg

badge.svg

python-for-android is a packaging tool for Python apps on Android. You can

create your own Python distribution including the modules and

dependencies you want, and bundle it in an APK along with your own code.

Features include:

Different app backends including Kivy, PySDL2, and a WebView with

Python webserver.

Automatic support for most pure Python modules, and built in support

for many others, including popular dependencies such as numpy and

sqlalchemy.

Multiple architecture targets, for APKs optimised on any given

device.

For documentation and support, see:

Documentation

Follow the quickstart

instructions

to install and begin creating APKs.

Quick instructions: install python-for-android with:

pip install python-for-android

(for the develop branch: pip install git+https://github.com/kivy/python-for-android.git)

Test that the install works with:

p4a --version

To build any actual apps, set up the Android SDK and NDK

as described in the quickstart.

Use the SDK/NDK API level & NDK version as in the quickstart,

other API levels may not work.

With everything installed, build an APK with SDL2 with e.g.:

p4a apk --requirements=kivy --private /home/username/devel/planewave_frozen/ --package=net.inclem.planewavessdl2 --name="planewavessdl2" --version=0.5 --bootstrap=sdl2

For full instructions and parameter options, see the

documentation.

Support

If you need assistance, you can ask for help on our mailing list:

Contributing

We love pull requests and discussing novel ideas. Check out the Kivy

project contribution guide and

feel free to improve python-for-android.

See our

documentation

for more information about the python-for-android development and

release model, but don't worry about the details. You just need to

make a pull request, we'll take care of the rest.

The following mailing list and IRC channel are used exclusively for

discussions about developing the Kivy framework and its sister projects:

License

python-for-android is released under the terms of the MIT License.

Please refer to the LICENSE file.

History

In 2015 these tools were rewritten to provide a new, easier-to-use and

easier-to-extend interface. If you'd like to browse the old toolchain, its

status is recorded for posterity at at

https://github.com/kivy/python-for-android/tree/old_toolchain.

In the last quarter of 2018 the python recipes were changed. The

new recipe for python3 (3.7.1) had a new build system which was

applied to the ancient python recipe, allowing us to bump the python2

version number to 2.7.15. This change unified the build process for

both python recipes, and probably solved various issues detected over the

years. These unified python recipes require a minimum target api level of 21,

Android 5.0 - Lollipop. If you need to build targeting an

api level below 21, you should use an older version of python-for-android

(<=0.7.1).

On March of 2020 we dropped support for creating apps that use Python 2. The latest

python-for-android release that supported building Python 2 was version 2019.10.6.

Contributors

This project exists thanks to all the people who contribute. [Contribute].

contributors.svg?width=890&button=false

Backers

Thank you to all our backers! 🙏 [Become a backer]

backers.svg?width=890

Sponsors

Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]

avatar.svg

avatar.svg

avatar.svg

avatar.svg

avatar.svg

avatar.svg

avatar.svg

avatar.svg

avatar.svg

avatar.svg

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐