Existuje způsob, jak spustit Python o Androidu?

hlasů
1k

Pracujeme na S60 verze a tato platforma má pěknou Python API.

Nicméně, není nic oficiální asi Python na Androidu, ale protože Jython existuje, existuje způsob, jak nechat hada a robot pracovat společně?

Položena 19/09/2008 v 14:21
zdroj uživatelem
V jiných jazycích...                            


25 odpovědí

hlasů
788

Jednou z možností je použít Kivy :

Open source Python knihovna pro rychlý vývoj aplikací, které využívají inovativní uživatelské rozhraní, jako jsou multi-dotykových aplikací.

Kivy běží na Linuxu, Windows, OS X, Android a iOS. Můžete spustit stejný [python] kód na všech podporovaných platformách.

Kivy Showcase app

Odpovězeno 18/11/2011 v 22:49
zdroj uživatelem

hlasů
298

K dispozici je také nový Android Scripting Environment projekt (ASE / SL4A). Vypadá to úžasné, a to má nějaký integraci s nativní součástí Android.

Poznámka: již za „aktivní vývoj“, ale některé mohou být vidle.

Odpovězeno 10/06/2009 v 06:24
zdroj uživatelem

hlasů
177

ANO!

Příkladem přes Matt Cutts přes SL4A - „tady je skener čárového kódu napsaný v šesti řádcích Pythonu:

import android
droid = android.Android()
code = droid.scanBarcode()
isbn = int(code['result']['SCAN_RESULT'])
url = "http://books.google.com?q=%d" % isbn
droid.startActivity('android.intent.action.VIEW', url)
Odpovězeno 10/06/2009 v 06:13
zdroj uživatelem

hlasů
73

K dispozici je také SL4A napsaný ve velkých zaměstnanci společnosti Google.

Odpovězeno 26/05/2011 v 10:21
zdroj uživatelem

hlasů
70

„The Pygame Subset pro Android je port podmnožinu funkčnosti Pygame na platformě Android. Cílem projektu je umožnit vznik Android specifických her, a ulehčit portování her z PC-like platformy Android .“

Tyto příklady zahrnují kompletní hru balené v APK, což je docela zajímavé.

Odpovězeno 28/01/2011 v 13:18
zdroj uživatelem

hlasů
63

Jsem vyslán návod a záplata pro kříž kompilovat Python 2.7.2 pro Android, můžete si ho stáhnout na mém blogu zde: http://mdqinc.com/blog/2011/09/cross-compiling-python-for-android /

EDIT: Mám open source Ignifuga , můj 2D herní engine, je Python / SDL založený a přes to sestavuje pro Android. Dokonce i když nechcete používat pro hry, můžete získat užitečné nápady z kódu a stavitel nástroj (s názvem Schafer, po Tim ... víte, kdo).

Odpovězeno 12/10/2011 v 14:49
zdroj uživatelem

hlasů
57

Skriptovací vrstva pro Android

SL4A dělá to, co chcete. Můžete snadno nainstalovat přímo do vašeho přístroje z jejich webu, a nepotřebují kořen.

To podporuje celou řadu jazyků. Python je nejvíce zralý. Ve výchozím nastavení používá Python 2.6, ale tam je přístav 3.2 můžete použít místo. Použil jsem tento port pro všechny druhy věcí na Galaxy S2 a fungovalo to dobře.

API

SL4A poskytuje port své androidknihovny pro každý podporovaný jazyk. Knihovna poskytuje rozhraní pro podkladové Android API prostřednictvím jediného Androidobjektu.

from android import Android

droid = Android()
droid.ttsSpeak('hello world') # example using the text to speech facade

Každý jazyk má skoro stejný API. Dokonce můžete použít API JavaScriptu uvnitř webviews.

let droid = new Android();
droid.ttsSpeak("hello from js");

Uživatelské rozhraní

Pro uživatelské rozhraní, máte tři možnosti:

  • Můžete snadno použít generické, nativní dialogy a nabídky prostřednictvím rozhraní API. To je dobré pro potvrzení dialogů a dalších základních uživatelských vstupů.
  • Můžete také otevřít zobrazovat webové zevnitř Python skript, pak použít HTML5 pro uživatelské rozhraní. Použijete-li webviews Python, můžete předat zprávy tam a zpět mezi WebView a Python procesu, který ho zplodil. UI nebudou nativní, ale je to pořád dobrá volba mít.
  • Tam je nějaký podpora pro nativní Android uživatelské rozhraní, ale nejsem si jistý, jak dobře to funguje; Jen jsem nikdy používal to.

Můžete kombinovat možnosti, takže můžete mít zobrazovat webové na hlavním rozhraní, a stále používat nativní dialogy.

QPython

K dispozici je projekt třetí strana s názvem QPython . Navazuje na SL4A a hází do nějaké jiné užitečné věci.

QPython vám hezčí uživatelské rozhraní pro správu instalace, a obsahuje málo, dotykový Editor kódu Python shell a PIP shell pro správu balíků. Mají také port Python 3. Obě verze jsou k dispozici v Obchodě Play zdarma. QPython také svazky knihovny z banda Python na Android projektech, včetně Kivy, takže to není jen SL4A.

Všimněte si, že QPython stále rozvíjet svou vidlici SL4A (i když ne moc, aby byl upřímný). Hlavním SL4A Samotný projekt je skoro mrtvý.

užitečné odkazy

Odpovězeno 19/03/2012 v 16:45
zdroj uživatelem

hlasů
54

Jako Python milence a programátor Android, jsem smutný říct, že to není opravdu dobrý způsob, jak jít. Existují dva problémy.

Jedním z problémů je, že tam je mnohem víc než jen programovací jazyk na Android vývojových nástrojů. Mnoho z Android s grafikou zahrnovat XML soubory ke konfiguraci zobrazení, podobně jako HTML. Vestavěné java objekty jsou skutečně integrovány s tímto uspořádáním XML, a je to mnohem jednodušší, než psát svůj vlastní kód jít od logiky do bitmapy.

Druhým problémem je, že G1 (a pravděpodobně i dalších zařízení se systémem Android pro blízkou budoucnost), jsou opravdu není tak rychlý. 200 MHz procesory a RAM, je velmi omezený. Dokonce i v Javě, co musíte udělat slušné množství přepisování-to-vyhnout-více-objektového-stvoření, pokud chcete, aby vaše aplikace dokonale hladký. Python bude příliš pomalý na chvíli ještě na mobilních zařízeních.

Odpovězeno 01/11/2008 v 21:29
zdroj uživatelem

hlasů
31

Není v tuto chvíli a budete mít štěstí, aby si Jython brzy fungovat. Pokud plánujete začít svůj vývoj teď by bylo lépe se jen držet Javy pro chvíle.

Odpovězeno 19/09/2008 v 14:26
zdroj uživatelem

hlasů
28

Používání SL4A (která již byla zmíněna sám v dalších odpovědích), můžete spustit full-foukané Web2py instance (jiné python webových frameworků jsou pravděpodobnými kandidáty stejně). SL4A neumožňuje dělat nativní prvky uživatelského rozhraní (tlačítka, posuvníky a podobně), ale to přece podpory WebViews . WebView je v podstatě nic víc než pruhovaný dole webový prohlížeč nasměrován na pevnou adresu. Domnívám se, že nativní aplikace Gmail používá WebView místo aby šel na pravidelnou widgetu trasu.

Tato cesta by mít některé zajímavé vlastnosti:

  • V případě většiny python webových frameworků, mohl byste ve skutečnosti vyvíjet a testovat bez použití zařízení Android nebo android emulátor.
  • Ať už Python kód můžete skončit psát o telefonu může být také kladen na veřejném webserveru s velmi málo (pokud vůbec) modifikací.
  • Dalo by se využít všechny bláznivé webové věci tam venku: dotaz, HTML5, CSS3, atd.
Odpovězeno 06/01/2012 v 15:34
zdroj uživatelem

hlasů
26

Kivy


Chci, aby tento post jako rozšíření toho, co @JohnMudd již odpověděl ( ale mějte se mnou, protože angličtina není můj první jazyk )

To bylo let, od té doby, a Kivy se vyvinulo v1.9-dev. Největší prodejní místo Kivy, podle mého názoru, je jeho kompatibilita cross-platform. Můžete kódovat a testovat v rámci místního prostředí (Windows / * nix atd.), Můžete také vytvářet, ladit a balit aplikaci spustit na vašem zařízení Android / iOS / Mac / Windows.

S Kivy vlastním KV jazykem, můžete kód a vytvořit rozhraní GUI snadno (to je stejně jako Java XML, ale spíše než TextView atd KV má svůj vlastní ui.widgetspro podobné překlady), což je podle mého názoru poměrně snadné přijmout.

V současné době Buildozer a python-for-android jsou nejvíce doporučené nástroje k vybudování / balení svých aplikací. Jsem se oba snažili a může pevně říci, že oni dělají budování aplikací pro Android s Python hračkou. Uživatelé, kteří se cítili ve své konzole / terminálu / příkazového řádku by měl mít žádné problémy s používáním jim a jejich průvodci jsou dobře zdokumentovány, taky.

Kromě toho, iOS je další velký prodejní místo Kivy, za předpokladu, že můžete použít stejný základní kód s malými změnami potřebných pro test běží na zařízení se systémem iOS, přes Kivy-ios Homebrew nástrojů, ačkoli Xcode je zapotřebí pro sestavení před spuštěním na jejich zařízení (Pokud vím iOS Simulator v Xcode v současné době nefunguje pro x86 architekturou sestavení). Tam jsou také některé problémy se závislostmi, které musí být ručně sestavené a pohrávala si s v Xcode mít úspěšnou stavbu, ale oni by nemělo být příliš obtížné vyřešit a lidé v Kivy Google skupiny jsou příliš opravdu užitečné.

Se všemi již bylo řečeno, uživatelé s dobrou znalostí jazyka Python by neměla mít žádný problém vyzvednutí základy v týdnech (ne-li dnů) postavit několik jednoduchých aplikací.

Za zmínku stojí, že můžete svazek (sestavení receptury) vaše Python moduly s sestavení, takže uživatelé mohou skutečně využívají mnoha existujících knihoven nám Python přivést, jako Žádosti & PIL apod prostřednictvím rozšíření podpory Kivy je .

Někdy aplikace vyžaduje funkci, která je nad rámec toho, co Kivy může přinést. V těchto případech je nutné uchýlit se k vnějším softwarové knihovny. Vzhledem k bohatství Python ekosystému, již existuje mnoho softwarových knihoven, které můžete jednoduše importovat a používat hned.

V neposlední řadě, pokud budete používat Kivy vážnějších / komerčních projektech můžete najít stávající moduly nejsou uspokojivé. Tam jsou některé fungující řešení, i když s „work in progress“ v pyjnius pro Android, a pyobjus . Uživatelé nyní mohou přistupovat k Java / Objective-C třídy přes tyto moduly pro ovládání některých nativních API.

Moje zkušenosti v Kivy je, že najde své nejlepší kondici s ochucené Python programátory a některých závažných programátory, kteří chtějí rychlý vývoj nebo jednoduchou údržbu kódu. To běží dobře na různých platformách, i když ne ve skutečnosti s nativním pocit.

Doufám, že některé Python aplikace programátoři najít tyto informace užitečné a začít užívat podívat na Kivy. To může jen lepšit (s větší podporu a jak knihovny / modules dostat portován) v případě, že je velký zájem ze strany komunity.

PS Nemám vztah s Kivy vůbec, já jsem jen programátor, který má opravdu rád myšlenku přinášet Python kódování zábavu s vývojem mobilních / cross-platform.

Odpovězeno 13/01/2015 v 02:08
zdroj uživatelem

hlasů
19

I používat aplikaci QPython. Má editor, konzole, a můžete spustit své programy v Pythonu s ním. Aplikace je zdarma, a linka je http://qpython.com/ .

Odpovězeno 12/06/2013 v 20:46
zdroj uživatelem

hlasů
17

Od Python pro android místa:

Python pro android je projekt vytvořit vlastní Python distribuce včetně modulů, které chcete, a vytvořit APK včetně python, libs a aplikace.

Odpovězeno 09/01/2012 v 05:46
zdroj uživatelem

hlasů
16

Existuje několik způsobů, jak používat Python na platformě Android.

BeeWare je sbírka nástrojů pro tvorbu nativních uživatelských rozhraní

Chaquopy je plugin pro Android Studio Gradle založené na sestavení systému.

Kivy je cross-platform OpenGL toolkit uživatelské rozhraní.

pyqtdeploy je nástroj pro nasazování aplikací PyQt.

QPython je na přístroji script engine a vývojové prostředí.

SL4A (Scripting vrstva pro Android), původně jmenoval ASE (Android Scripting Environment), je sada „fasády“, které vystavují značně zjednodušené podmnožinu Android API.

PySide (Python vázání pro Qt sady nástrojů), které se předběžně podporu pro Android.

Ačkoli primární programovací jazyk Androidu je Java, není známo Port Jython k platformě. Android podpora BeeWare je dosaženo použitím VOC, což je nástroj, který sestavuje Python zdrojový kód soubory třídy Java. To umožňuje Python kód být vykonán jako nativní binární na JVM. https://wiki.python.org/moin/Android

Odpovězeno 23/01/2018 v 11:58
zdroj uživatelem

hlasů
13

Ještě jeden pokus: https://code.google.com/p/android-python27/

Tenhle vložit přímo Python interpretter ve vaší aplikace APK.

Odpovězeno 09/05/2012 v 16:44
zdroj uživatelem

hlasů
8

Můžete použít Termux aplikace:

Všimněte si, že apt nainstalovat python nainstalovat python 3. pro Python 2 jste shoud zavolat apt nainstalovat python2.

Některé ukázky zde: https://www.youtube.com/watch?v=fqqsl72mASE

A také stránku GitHub: https://github.com/termux

Odpovězeno 20/01/2017 v 11:36
zdroj uživatelem

hlasů
8

Můžete spustit Python kód pomocí sl4a . sl4a podporuje Python, Perl , JRuby , Lua , BeanShell, JavaScript, Tcl , a skript.

Můžete se dozvědět sl4a Python příklady .

Odpovězeno 11/03/2013 v 10:36
zdroj uživatelem

hlasů
8

K dispozici je také python-on-a-chip případně systémem mosync: Google skupiny

Odpovězeno 29/03/2011 v 17:42
zdroj uživatelem

hlasů
7

Další možností, pokud hledáte 3.4.2 nebo 3.5.1 je tento archiv na GitHub.

Python3-Android 3.4.2 nebo Python3-Android 3.5.1

V současné době podporuje Python 3.4.2 nebo 3.5.1 a verze NDK 10d. To může také podporovat 3.3 a 9c, 11c a 12

Je hezké, že ho jednoduše stáhněte, spusťte make a dostanete .so nebo .A

I v současné době použít ke spuštění syrové Python na Android zařízení. S několika modifikacemi k vytváření souborů můžete také x86 a armeabi 64 bit

Odpovězeno 25/02/2015 v 13:04
zdroj uživatelem

hlasů
6

K dispozici je aplikace s názvem QPython3 v Obchodě Play, které mohou být použity jak pro editaci a běh python skript.

Obchodě Play odkaz

Další aplikace s názvem Termux, ve kterém si můžete nainstalovat pomocí příkazu python

pkg install python

Obchodě Play Link

Odpovězeno 15/04/2017 v 14:09
zdroj uživatelem

hlasů
6

Můžete použít QPython :

Má Python Console, editor, stejně jako management / Montéři Package

http://qpython.com/

Je to open source projekt s oběma Python 2 a Python 3 implementací. Zde si můžete stáhnout zdroj a Android APK soubory přímo z GitHub.

QPython 2: https://github.com/qpython-android/qpython/releases

QPython 3: https://github.com/qpython-android/qpython3/releases

Odpovězeno 16/09/2016 v 02:41
zdroj uživatelem

hlasů
6

Neviděl to zveřejněny zde, ale můžete to udělat s Pyside a Qt Qt teď pracuje na Android díky Necessitas.

Vypadá to, že docela kludge v okamžiku, ale mohl by být životaschopná cesta nakonec ...

http://qt-project.org/wiki/PySide_for_Android_guide

Odpovězeno 06/10/2014 v 15:59
zdroj uživatelem

hlasů
3

A ještě jedna varianta se zdá být pyqtdeploy který cituje docs je:

nástrojem, který ve spojení s dalšími nástroji opatřenými Qt umožňuje nasazení PyQt4 a PyQt5 aplikace napsané s Python v2.7 nebo Python v3.3 nebo novější. To podporuje nasazení do stolních platforem (Linux, Windows a OS X) a pro mobilní platformy (iOS a Android).

Podle aplikace Nasazení PyQt5 na Android přes pyqtdeploy a Qt5 je aktivně rozvíjet, i když je těžké najít příklady pracovních Android aplikace nebo návod na to, jak překonat kompilovat všechny požadované knihovny Android. Je to zajímavý projekt, mějte na paměti, i když!

Odpovězeno 18/05/2015 v 01:56
zdroj uživatelem

hlasů
1

Chaquopy

Chaquopy je plugin pro Android Studio Gradle založené na sestavení systému. Zaměřuje se na úzké integraci se standardními nástroji Android rozvoje.

  • Poskytuje komplexní rozhraní API volat Java Python nebo Python z Javy , což umožňuje vývojářům používat jakýkoliv jazyk je pro každou součást jejich aplikace nejlepší.

  • Je možné automaticky stahovat PyPI balíčky a stavět je do aplikace, včetně vybraných nativních balíčcích, jako NumPy.

  • To umožňuje plný přístup ke všem Android API od Python, včetně nativní toolkit uživatelského rozhraní ( například čistý-Python aktivita ).

Toto je komerční produkt, ale je to zdarma open-source použití a vždy zůstane to tak.

(Jsem tvůrcem tohoto produktu.)

Odpovězeno 16/02/2018 v 17:12
zdroj uživatelem

hlasů
0

Podívejte se na BeeWare . V okamžiku odpovědi na tuto otázku je stále na počátku vývoje. Jeho cílem je, aby bylo možné vytvářet nativní aplikace v Pythonu pro všechny podporované operační systémy, včetně Android.

Odpovězeno 12/01/2018 v 18:56
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more