======Archives : Kivy Comment créer une application android en python====== **Cette page est obsolète, elle est en archives !** Voir **[[::kivy_buildozer|Kivy: Buildozer pour compiler une application Android en python]]** pour la dernière version **{{tagpage>kivy|Toutes les pages Kivy}}** **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 ! Testé en janvier 2019 sur:\\ **Debian Buster alpha 4**\\ et sur \\ **Xubuntu 18.04 dans VirtualBox** =====Buildozer et python 3===== **[[https://github.com/kivy/buildozer|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 **[[https://kivy.org/#home|Kivy]]**. Last but not least, un tas de package python ne sont pas supportés. * [[https://github.com/kivy/buildozer|Buildozer sur GitHub]] * [[http://buildozer.readthedocs.io/en/latest/installation.html|Installation]] * [[https://kivy.org/docs/guide/packaging-android.html|Guide Android]] =====Les problèmes avec buildozer en décembre 2018===== * [[https://stackoverflow.com/questions/53613329/buildozer-gives-error-upon-building-pong-app-of-kivy-framework-for-android-publi|Buildozer gives error upon building pong app]] **Je ne suis pas le seul !** * [[https://stackoverflow.com/questions/43477095/buildozer-on-kivy-example-fails-to-build-apk/53849129#53849129|Buildozer on kivy example fails to build apk]] **Buildozer semble n'être qu'une perte de temps !** * [[https://stackoverflow.com/questions/43477095/buildozer-on-kivy-example-fails-to-build-apk/53849129#53849129|Essayer Python for Android or QPython]] **BuilDozer est obsolète !** * [[https://stackoverflow.com/questions/54039201/i-can-not-by-buildozer-create-apk|I cann't create apk with buildozer]] **L'auteur dit avoir essayé différentes méthodes mais que tout se fini sur une erreur: comme moi !** * [[https://github.com/kivy/buildozer/issues/774|Buildozer issue 774]] **La documentation est très imprécise** * [[https://www.reddit.com/r/Python/comments/9fqh7y/my_experience_with_kivy_so_far_2_weeks_in/|Vu de loin sur reddit.com]] **Mais ce ne sera pas sans peine** ====Quel Cython ?==== **[[https://kivy.org/docs/installation/installation-linux.html#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 ?==== * **[[https://github.com/kivy/kivy/wiki/Android-SDK-NDK-Information|Android SDK NDK API Information]]** dans le wiki Kivy. =====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 pygame kivy buildozer pyjnius ====Version==== * cython 0.29.2 * kivy 1.10.1 * buildozer 0.35 * pygame-1.9.4 ====Fichiers==== #! /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() [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 android.ndk_path = /media/sf_data/src_android/android-ndk-r14b android.sdk_path = /media/sf_data/src_android/android-sdk-20 [buildozer] log_level = 2 warn_on_root = 1 =====Hello World sur Xubuntu 18.04 avec python 3.6.7 dans une VirtualBox===== ** Problème: ce n'est pas python3.7 !!!** ====Installation de buildozer à partir de la branche master sur github==== sudo pip3 install https://github.com/kivy/buildozer/archive/master.zip installe buildozer 0.38 dev0 sudo pip3 install git+https://github.com/kivy/kivy.git@master Successfully installed Kivy-1.11.0.dev0 ===== Kivy Virtual Machine (for Android/buildozer) sur Xubuntu 17.04 ===== * Voir ** [[https://kivy.org/#download|Kivy Virtual Machine (for Android/buildozer)]]** **juste pour essayer**, la VM est basée sur **Xubuntu 17.04 qu'il n'est plus possible de mettre à jour.** ===== Des applications réussies jusqu'en avril 2018===== * **[[https://wiki.labomedia.org/index.php/Multi_Pong|Multi Pong]]** * **[[:taposc|Kivy: TapOSC]]** * **[[https://github.com/sergeLabo/wikikircandroid2|]]** * **[[https://github.com/sergeLabo/atts|Android Threaded TCP Server made with kivy buildozer python3]]** * **[[https://github.com/sergeLabo/TCPclient|Un client TCP simple pour test]]** * **[[https://github.com/sergeLabo/androidserver2|Python server on android, on local network. Used in a futur funny game.]]** * **[[https://github.com/sergeLabo/kivent_example_16|Test with kivent example 16 avec kivent]]** * **[[https://github.com/sergeLabo/Buggy/tree/master/android_wheel|Un téléphone comme volant]]** {{tag>archive sb}}