2016-05-26 9 views
5

Ho trovato alcuni modi per usare python per costruire l'app per android. Ma tutti hanno bisogno di installare sl4a e pythonforandroid. È così complicato, quindi c'è un modo per confezionare sl4a nel mio progetto di app per Android, e una volta installato l'apk, non ho più bisogno di installare sl4a.C'è un modo per chiamare il codice Python in Android sviluppare senza installare sl4a?

+0

Forse ti aiuterà a guardare il seguente argomento: [Come posso integrare un codice Python nell'app Android Java?] (Https://www.quora.com/How-can-I-integrate- a-Python-code-in-the-Android-Java-app) E qui c'è un altro buon progetto che penso dovresti controllare: [python-per-android] (https://github.com/kivy/python -for-android) – Sir1

risposta

3

È possibile utilizzare Kivy al seguente link:

Python for Android

Sarà può aiutare u avere uno sguardo al seguente argomento:

How can I integrate a Python code in the Android Java app?

speranza questo aiuterà.

+0

Voglio solo chiamare alcuni script Python (la maggior parte dei codici del mio progetto usando Java) Sembra che kivy non sia compatibile bene con java, e l'interfaccia utente è diversa dall'app nativa per Android. – ZXF

+0

Ho fatto qualche ricerca, non so se questo potrebbe aiutarti [Java Native Access (JNA)] (https://github.com/java-native-access/jna) – Sir1

1

È possibile fare questo. Quello che viene fuori è il confezionamento dell'interprete Python (compilato dall'NDK) nella tua app e l'avvio tramite i meccanismi standard NDK. Questa è la stessa cosa che ad es. Kivy lo fa, ma dovresti aggiungere il codice alla tua app piuttosto che (come Kivy) usando un bootstrap java e lasciando che Python gestisca tutto il resto.

Un'opzione, che ha visto recentemente un po 'di discussione/sviluppo, è quella di utilizzare python-for-android per creare tutti i componenti Python, quindi copiarli nel progetto java (e aggiungere il codice per gestirlo). Questo è possibile, ma al momento non è così facile come potrebbe essere, avresti bisogno di esaminare come funziona internamente per ottenere gli output di cui hai bisogno.

Un'altra opzione che è probabilmente più facile in questo momento se non è necessario il codice al di là di pitone è di per sé di utilizzare direttamente i binari precompilati pitone del CrystaX NDK compilato, nel qual caso compresi i binari pitone scende a aggiungendoli soltanto al vostro Android.mk. Avresti ancora bisogno di un codice C e NDK per interagire con l'interprete, ma il processo è abbastanza semplice.

(SL4A ha alcuni propri strumenti di build Android, che è possibile utilizzare anche per questo, ma non so cosa avresti bisogno di fare per integrarlo perché penso che SL4A faccia cose extra solo su avere l'interprete python presente).

+0

Ho appena trovato un blog che riferito a python.https: //www.crystax.net/en/blog/6, ci sono altri articoli o demo su questo? – ZXF

+0

Non proprio, anche se per quello che vale i singoli passaggi sono abbastanza standard. Puoi guardare il supporto python3 di python-per-android per un esempio di utilizzo dei binari di crystax, ma anche questo sarà difficile da ottenere dato che è legato a molte altre funzionalità. – inclement

Problemi correlati