[PYTHON] Commencer à développer des applications Kivy pour smartphones à l'aide de Buildozer

Il existe une bibliothèque de développement multiplateforme pour python appelée Kivy. Le mécanisme détaillé de Kivy lui-même est mis de côté (je ne l'ai pas encore utilisé). Je voudrais présenter une méthode approximative pour créer un package pour iOS / Android fourni par Kivy.

python-pour-android et kivy-ios

python-for-android

Il s'agit d'un projet de package Kivy pour Android. (Il semble être différent de celui de Google Code) Cela semble être un mécanisme pour créer Python pour ARM basé sur Android SDK + NDK (= hostpytthon) et exécuter l'application réelle sur hostpython.

$ cd python-for-android
$ ./distribute.sh -m "openssl pil kivy"
$ cd dist/default
$ ./build.py --package org.test.touchtracer --name touchtracer --version 1.0 --dir ~/code/kivy/examples/demo/touchtracer debug

L'exécution elle-même ne nécessite pas une procédure aussi difficile,

C'est un peu gênant.

kivy-ios

Il s'agit d'un projet pour créer un projet xcode pour iOS.

$ ls 
kivyapp <-Voici l'application Kivy
$ git clone https://github.com/kivy/kivy-ios
$ ./tools/build-all.sh
$ ./tools/create-xcode-project.sh kivyapp ./kivyapp

La commande elle-même est aussi simple que python-for-android, et vous pouvez facilement vérifier le fonctionnement de la machine réelle.

J'ai peur d'avoir quelque chose comme ça.

Préparer l'environnement de construction Android / iOS avec buildozer

Buildozer est un outil qui peut contrôler les deux projets ci-dessus à la fois. Finalement

Il gère la plupart des choses liées à l'emballage.

Essayez d'installer

Il est également enregistré dans PyPI, mais personnellement, il est préférable de l'installer à partir de la source de github. (Dans l'environnement stable, la construction de l'environnement Android ne se poursuit pas en raison de divers problèmes)

$ git clone git://github.com/kivy/buildozer
$ cd buildozer
$ python setup.py install

Fondamentalement, la plupart des opérations sont effectuées avec la commande buildozer disponible lors de l'installation.

$ buildozer init
$ ls -l
(Source de l'application)
buildozer.spec <-Construisez ici/Décrivez les éléments requis pour le packaging (nom de l'application, ID de l'application iOS, etc.)
$ buildozer android debug <-Emballage des fichiers apk pour Android. Cette commande exécutera le processus au milieu
$ buildozer ios debug <-Emballage IPA pour iOS. Cette commande exécutera le processus au milieu

C’est facile, non?

Puisque vous pouvez également décrire le chemin du SDK Android et du NDK dans buildozer.spec, vous pouvez utiliser celui que vous avez déjà téléchargé. Vous pouvez également définir des variables individuelles à l'aide de l'option --profile pour des constructions détaillées.

Points à connaître

Comme mentionné ci-dessus, vous pouvez spécifier le chemin du SDK, NDK, etc., mais si vous l'exécutez sans rien modifier, il essaiera de tout télécharger. De plus, puisque python-for-android et kivy-ios sont téléchargés et gérés collectivement uniquement sous des contrôles spécifiques, Tous les problèmes ci-dessus demeurent.

Néanmoins, je le recommande car vous pouvez vous concentrer sur le développement d'applications sur Kivy à moins d'utiliser un package Python très inhabituel.

Prime

スクリーンショット 2014-12-10 22.39.02.png

C'est le résultat de l'empaquetage d'une application qui affiche uniquement le bouton Hello world.

Le fichier ipa s'est développé avec brio. Au contraire, j'ai été impressionné par le fait que le fichier Apk était étonnamment petit.

Recommended Posts

Commencer à développer des applications Kivy pour smartphones à l'aide de Buildozer
Premiers pas avec Python pour les classes PHPer
Premiers pas avec Julia pour Pythonista
Premiers pas avec Python pour les fonctions PHPer
Premiers pas avec Python pour PHPer-Super Basics
Mise en route: 30 secondes de traduction en japonais Keras
Premiers pas avec Lisp pour Pythonista: Supplément
Je souhaite développer des applications Android sur Android