Outils pour exécuter Python sur Android

  • par

Python s’est révélé être un langage très performant – abordable pour les nouveaux venus, mais puissant entre les mains des experts. Pourquoi ne pourriez-vous pas utiliser Python partout où vous avez besoin de demander à un ordinateur de faire quelque chose ? Et vos outils ne devraient-ils pas exploiter toutes les capacités de Python en tant que langage, et pas seulement les bits qui correspondent bien à une liaison C ?

L’informatique moderne ne se produit pas dans une fenêtre de console 80×25. Elle se produit sur des téléphones, des tablettes et des machines de bureau avec des interfaces utilisateur riches. Ne devriez-vous pas être en mesure d’utiliser Python à tous ces endroits, et d’exploiter les capacités uniques de ces plateformes ?

Les utilisateurs finaux ne devraient pas avoir à se soucier du langage dans lequel leurs outils sont écrits. Et cela commence par l’apparence et le comportement d’outils complètement natifs. Aspect natif, comportement natif, livré de la manière dont une application native est livrée. Pourquoi vos outils Python ne pourraient-ils pas s’intégrer aussi bien qu’un outil natif ?

Il existe plusieurs façons d’utiliser Python sur Android.

BeeWare est une collection d’outils permettant de créer des interfaces utilisateur natives

.

Voici ce que fournit BeeWare. Des outils pour vous aider à écrire du code Python avec une interface utilisateur riche et native ; et les bibliothèques et le code de support nécessaires pour faire fonctionner ce code sur iOS, Android, macOS, Linux, Windows, tvOS, et plus encore.

Source ouverte

Le processus de développement Open Source a prouvé qu’il était le moyen le plus fiable de développer des logiciels robustes et fiables. C’est pourquoi l’ensemble de la suite d’outils BeeWare est sous licence BSD, et disponible pour tous afin d’être utilisé et modifié.

Chaquopy

Chaquopy est un plugin pour le système de construction basé sur Gradle d’Android Studio.

.

Chaquopy vous permet de mélanger librement Java et Python dans votre application, en utilisant le langage qui convient le mieux à vos besoins :

  • Avec l’API Python , vous pouvez écrire une application partiellement ou entièrement en Python. L’API Android complète et la boîte à outils de l’interface utilisateur sont directement à votre disposition.

Chaquopy fonctionne au sein du système de construction standard d’Android :

  • Si vous utilisez Android Studio, vous pouvez commencer à utiliser Chaquopy en 5 minutes sans modifier votre processus de développement existant.
  • Le téléchargement et l’installation sont automatisés via Gradle.

Pour commencer:

  • Essayer l’application de démonstration pour Python 2 ou Python 3.
  • Parcourir le code source de l’exemple sur GitHub.
  • Ou consulter la documentation.

Kivy

Kivy est une boîte à outils d’interface utilisateur multiplateforme basée sur OpenGL.

Vous pouvez exécuter des applications Kivy sur Android, sur (plus ou moins) tout appareil avec OpenGL ES 2.0 (Android 2.2 minimum). C’est la norme sur les appareils modernes ; Google indique que cette exigence est respectée par 99,9 % des appareils.

Les APK de Kivy sont des applications Android normales que vous pouvez distribuer comme n’importe quelle autre, y compris sur des magasins comme le Play store. Elles se comportent correctement lorsqu’elles sont mises en pause ou redémarrées, peuvent utiliser les services Android et ont accès à la plupart des API java normales, comme décrit ci-dessous.

Suivez les instructions ci-dessous pour apprendre à empaqueter votre application pour Android, à déboguer votre code sur l’appareil et à utiliser les API Android, par exemple pour les vibrations et la lecture des capteurs.

Le projet Kivy fournit tous les outils nécessaires pour conditionner votre application sur Android, y compris la construction de votre propre APK autonome qui peut être distribué sur un marché comme le Play store. Ceci est entièrement couvert dans la documentation Créer un paquet pour Android.

Utiliser les API Android

Bien que Kivy soit un framework Python, le projet Kivy maintient des outils pour utiliser facilement les API java normales, pour tout, des vibrations aux capteurs en passant par l’envoi de messages par SMS ou e-mail.

Pour les nouveaux utilisateurs, nous recommandons d’utiliser Plyer. Pour un accès plus avancé ou pour les API non enveloppées actuellement, vous pouvez utiliser directement Pyjnius. Kivy fournit également un module android pour les fonctionnalités Android de base.

Le code et les exemples Android contribués par les utilisateurs sont disponibles sur le wiki de Kivy.

Pyqtdeploy

Pyqtdeploy est un outil pour déployer des applications PyQt. Il prend en charge le déploiement sur des plateformes de bureau (Linux, Windows et OS X) et sur des plateformes mobiles (iOS et Android).

pyqtdeploy fonctionne en prenant les modules individuels d’une application PyQt, en les gelant, puis en les plaçant dans un fichier de ressources Qt qui est converti en code C++ par l’outil rcc de Qt. La bibliothèque standard de Python est traitée de la même manière.

pyqtdeploy génère également un fichier Qt .pro qui décrit tout le code C++ généré. À partir de celui-ci, l’outil qmake de Qt est utilisé pour générer un Makefile spécifique à la plateforme qui générera ensuite un seul exécutable. D’autres outils Qt et/ou spécifiques à la plateforme peuvent ensuite être utilisés pour convertir l’exécutable en un paquet déployable spécifique à la plateforme.

pyqtdeploy nécessite l’installation de PyQt5 et de Python v3.2 ou plus.

Les applications PyQt4 et PyQt5 écrites à l’aide de Python v2.6 et plus et de Python v3.3 et plus sont prises en charge.

pyqtdeploy est publié sous la licence BSD.

QPython

QPython est un moteur de script et un environnement de développement sur appareil.

Dans la plupart des cas, le script peut faire votre travail aussi bien que l’application native. Maintenant, vous pouvez le faire avec l’aide de QPython.

QPython est un moteur de script qui exécute des programmes Python sur les appareils android. Il peut également aider les développeurs à développer des applications android.

QPython comprend un kit de développement complet qui vous aide à développer des programmes avec le mobile fournit une console Python régulière

SL4A

SL4A (Scripting Layer for Android), initialement nommé ASE (Android Scripting Environment), est un ensemble de « façades » qui exposent un sous-ensemble grandement simplifié de l’API Android.

SL4A apporte les langages de script à Android en permettant d’éditer et d’exécuter des scripts et des interprètes interactifs directement sur l’appareil Android. Ces scripts ont accès à de nombreuses API disponibles pour les applications Android à part entière, mais avec une interface grandement simplifiée qui facilite la réalisation des tâches.

Les scripts peuvent être exécutés de manière interactive dans un terminal et en arrière-plan. Python, Perl, JRuby, Lua, BeanShell, JavaScript, Tcl et shell sont actuellement pris en charge, et nous prévoyons d’en ajouter d’autres. Voir la liste de lecture de l’aide vidéo SL4A sur YouTube pour diverses démonstrations des fonctionnalités de SL4A.

SL4A est conçu pour les développeurs et est un logiciel de qualité alpha.

PySide

PySide (la liaison Python pour la boîte à outils Qt) a un certain support préliminaire pour Android.

Le projet PySide fournit des liaisons Python sous licence LGPL-.sous licence LGPL, des liaisons Python pour Qt 4. Il comprend également une chaîne d’outils complète permettant de générer rapidement des liaisons pour toute hiérarchie de classes C++ basée sur Qt. Les liaisons PySide Qt permettent à la fois le développement de logiciels libres open source et propriétaires et visent finalement à soutenir les plates-formes Qt.

8.Termux

Termux est un émulateur de terminal Android et une application d’environnement Linux qui fonctionne directement sans avoir besoin d’enracinement ou d’installation. Un système de base minimal est installé automatiquement – des paquets supplémentaires sont disponibles en utilisant le gestionnaire de paquets APT.

Google Play

.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *