Outils pour utilisateurs

Outils du site


archives:kivy_comment_creer_une_application_android_en_python

Ceci est une ancienne révision du document !


Kivy Comment créer une application android en python

Buildozer compile le Python 3 par défaut !
Mais je n'ai pas réussi à obtenir un *.apk Et ça ne marche pas non plus en python 2 !

Buildozer et python 3

Buildozer Generic Python packager for Android and iOS

Buildozer est un des projets de kivy. Quand ça marche, c'est super pratique. Cela permet de créer une application Andoid à partir de script python utilisant Kivy.

Last but not least, un tas de package python ne sont pas supportés.

Les problèmes avec buildozer en décembre 2018

Quel Cython ?

Version de cython

  • cython ou cython3 et quelle version ?
  • buildozer avec pip ou pip3 et quelle version ?

Quelle version de SDK, NDK et ANDROID API ?

Hello World sur debian buster avec python 3.7 dans une VirtualBox

Installation des dépendances

sudo apt-get install caja-open-terminal geany geany-plugins git gnome-system-tools locales

sudo dpkg --add-architecture i386
sudo apt-get update

sudo apt-get install libsdl2-dev zlib1g-dev pkg-config autoconf automake cmake dkms libtool libsdl2-2.0-0 ccache openjdk-11-jdk unzip ffmpeg libsdl2-image-dev libsdl2-mixer-dev libsdl2-ttf-dev libportmidi-dev libswscale-dev libavformat-dev libavcodec-dev libgstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-good libncurses5:i386 libstdc++6:i386 libgtk2.0-0:i386 libpangox-1.0-0:i386 libidn11:i386 zlib1g:i386 openjdk-11-source libssl-dev openssl gcc libpangoxft-1.0-0:i386 adb libtool build-essential python3-pip python3-dev python3-six libpython3-all-dev python3-all python3-all-dev python3-virtualenv virtualenv

sudo pip3 install jinja2 appdirs sh colorama setuptools cython
sudo pip3 install kivy buildozer pyjnius

Fichiers

main.py
#! /usr/bin/env python3
# -*- coding: utf-8 -*-
 
import kivy
kivy.require('1.10.1')
 
from kivy.app import App
from kivy.uix.label import Label
 
class MyApp(App):
    def build(self):
        return Label(text='Hello world')
 
if __name__ == '__main__':
    MyApp().run()
buildozer.spec
[app]
title = My Application
package.name = myapp
package.domain = org.test
source.dir = .
build_dir = /build/myapp
source.include_exts = py,png,jpg,kv,atlas
version = 3.00
requirements = python3,kivy
orientation = portrait
fullscreen = 0
android.arch = armeabi-v7a
 
android.api = 24
android.sdk = 20
android.ndk = 14b
 
[buildozer]
log_level = 2
warn_on_root = 1

Kivy Virtual Machine (for Android/buildozer) sur Xubuntu 17.04

Des applications réussies jusqu'en avril 2018

archives/kivy_comment_creer_une_application_android_en_python.1546951720.txt.gz · Dernière modification : 2019/01/08 12:48 de serge