web-dev-qa-db-fra.com

Est-il possible d'utiliser Python pour écrire des applications multiplates-formes pour iOS et Android?

Est-il possible d'utiliser Python pour écrire des applications multiplates-formes pour iOS et Android

75
user1404932

Pour Android, Google fournit quelque chose appelé ASE (Android Scripting Environment) qui permet aux langages de script (Python inclus) de s'exécuter sur Android. Plus de détails ici

Pour iOS, cela pourrait être un peu plus compliqué (et je vous conseillerais de vérifier la dernière version du contrat de SDK pour iOS afin de vérifier l'état actuel de la loi - Apple a tendance à autoriser et interdire de telles applications régulièrement). Pour la partie technique, vous aurez peut-être besoin d'une interface entre Python et Objective C, ainsi que de l'assistant pour lier statiquement toutes les bibliothèques requises par Python; Des informations complètes sont disponibles ici . Une autre approche pour le développement Python iOS serait d’incorporer un interpréteur Python dans votre application et de distribuer votre script Python avec celui-ci (afin de bien jouer avec les règles Apple). Dans ce cas, votre application Python serait un interpréteur Python qui est fourni avec votre script et l'exécute automatiquement.

La deuxième option consiste à utiliser le framework Kivy (kivy.org) - un framework permettant d'écrire des applications tactiles en Python et de les empaqueter pour différentes plates-formes. Il a eu le support Android pendant un certain temps, et a récemment ajouté le support iOS

25
Raheel

Une option est kivy : un framework Python inter plate-forme intéressant pour Android, Win7, Linux, MacOSX et iOS.

Mise à jour: le projet kivy se développe tous les jours, supporte maintenant aussi Raspberry Pi

74
piertoni

Pour écrire une application GUI, vous pouvez utiliser la bibliothèque Toga , puis la conditionner avec briefcase dans une application Android et/ou iOS (ou Windows, Linux, macOS, etc.).

Remarque: le projet est toujours à l'état alpha mais en développement rapide.

4
Ocupe

Vous pouvez essayer de combiner brython et cordova . Le wiki Brython décrit comment écrire une application Android à l'aide de Brython , qui peut fournir les informations nécessaires pour le faire également à l'aide de Cordova. Je n'ai pas encore testé cela, mais cela semble prometteur. Cependant, vous devez savoir que, en raison de sa nature, Brython ne peut pas prendre en charge les packages compilés x86 tels que OpenCV (voir, par exemple, ici ). Par contre, si vous connaissez un peu le langage JavaScript/HTML5, vous pouvez utiliser les fonctions natives de WebView, par exemple. http://www.brython.info/gallery/three.html .

2
Tobias Kienzler

Comme @piertoni l'a mentionné, BeeWare permet aux applications natives iOS et Android d'être écrites en Python.

0
michael