Domanda C'è un modo per eseguire Python su Android? [chiuso]


Stiamo lavorando su un S60 versione e questa piattaforma ha una bella API Python.

Tuttavia, non c'è nulla di ufficiale su Python su Android, ma da allora Jython esiste, c'è un modo per far lavorare insieme il serpente e il robot?


1885
2017-09-19 13:21


origine


risposte:


Un modo è da usare Kivy:

Libreria Python open source per lo sviluppo rapido di applicazioni   che fanno uso di interfacce utente innovative, come le app multi-touch.

Kivy funziona su Linux, Windows, OS X, Android e iOS. È possibile eseguire lo stesso codice [python] su tutte le piattaforme supportate.

App Kivy Showcase 


818
2017-11-18 21:49



C'è anche il nuovo Ambiente di scripting Android (ASE / SL4A) progetto. È fantastico e ha una certa integrazione con i componenti Android nativi.

Nota: non più in "sviluppo attivo", ma alcune forcelle potrebbero esserlo.


302
2018-06-10 05:24



SÌ!

Un esempio via Matt Cutts via SL4A - "ecco uno scanner di codici a barre scritto in sei righe di codice Python:

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)

180
2018-06-10 05:13



C'è anche SL4A scritto in grande dai dipendenti di Google.


73
2018-05-26 09:21



"Il Pygame Subset per Android è una porta di un sottoinsieme di funzionalità Pygame per la piattaforma Android. L'obiettivo del progetto è consentire la creazione di giochi specifici per Android e facilitare il porting di giochi da piattaforme simili a PC ad Android. "

Gli esempi includono un gioco completo confezionato in un APK, che è piuttosto interessante.


71
2018-01-28 12:18



Ho postato le istruzioni e una patch per cross compilare Python 2.7.2 per Android, puoi farlo sul mio blog qui: http://mdqinc.com/blog/2011/09/cross-compiling-python-for-android/

EDIT: ho aperto di provenienza ignifuga, il mio motore di gioco 2D, è basato su Python / SDL e compila cross per Android. Anche se non lo usi per i giochi, potresti ottenere idee utili dal codice e dall'utilità di creazione (chiamato Schafer, dopo Tim ... sai chi).


63
2017-10-12 13:49



Livello di script per Android

SL4A fa quello che vuoi Puoi facilmente installarlo direttamente sul tuo dispositivo dal loro sito e non hai bisogno di root.

Supporta una vasta gamma di lingue. Python è il più maturo. Di default usa Python 2.6, ma c'è un 3.2 porta puoi usare invece. Ho usato quella porta per tutti i tipi di cose su un Galaxy S2 e ha funzionato bene.

API

SL4A fornisce una porta della loro android libreria per ogni lingua supportata. La libreria fornisce un'interfaccia per l'API Android sottostante attraverso un singolo Android oggetto.

from android import Android

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

Ogni lingua ha praticamente la stessa API. Puoi persino utilizzare l'API JavaScript all'interno delle visualizzazioni web.

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

Interfacce utente

Per le interfacce utente, hai tre opzioni:

  • Puoi facilmente usare i dialoghi e i menu generici nativi attraverso il API. Questo è utile per i dialoghi di conferma e altri input utente di base.
  • Puoi anche aprire una webview da uno script Python, quindi utilizzare HTML5 per l'interfaccia utente. Quando usi le visualizzazioni web da Python, puoi passare messaggi avanti e indietro, tra la webview e il processo Python lo ha generato. L'interfaccia utente non sarà nativa, ma è comunque una buona opzione per avere.
  • C'è alcuni supporto per interfacce utente Android native, ma non lo sono sicuro come funziona bene; Non l'ho mai usato.

È possibile combinare le opzioni, in modo da avere una vista Web per l'interfaccia principale e utilizzare comunque dialoghi nativi.

QPython

C'è un progetto di terze parti chiamato QPython. Si basa su SL4A e genera altre cose utili.

QPython offre un'interfaccia utente migliore per gestire l'installazione e include un piccolo editor di codice touchscreen, una shell Python e una shell PIP per la gestione dei pacchetti. Hanno anche una porta Python 3. Entrambe le versioni sono disponibili da Play Store, gratuitamente. QPython raggruppa anche le librerie di Python su progetti Android, incluso Kivy, quindi non è solo SL4A.

Si noti che QPython sviluppa ancora il suo fork di SL4A (anche se non è molto onesto). Il principale progetto SL4A è praticamente morto.

link utili


57
2018-03-19 15:45