2016-05-26 4 views
5

Ich habe einige Wege gefunden, mit Python Android App zu bauen.Aber alle von ihnen müssen SL4A und Pythonforandroid installieren. Es ist so kompliziert, also gibt es eine Möglichkeit, sl4a zu meinem Android-App-Projekt zu packen, und sobald ich die apk installiere, muss ich sl4a nicht mehr installieren.Gibt es eine Möglichkeit, Python-Code in Android zu entwickeln, ohne sl4a zu installieren?

+0

Vielleicht hilft es Ihnen, folgendes Thema zu betrachten: [Wie kann ich einen Python-Code in die Android Java App integrieren?] (Https://www.quora.com/How-can-I-integrate- a-Python-Code-in-der-Android-Java-App) Und hier ist ein weiteres gutes Projekt, das Sie überprüfen sollten: [Python-für-Android] (https://github.com/kivy/python -for-android) – Sir1

Antwort

3

Sie können Kivy auf folgenden Link:

Python for Android

wird es u kann einen Blick auf das folgende Thema helfen haben:

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

Hoffnung diese Ihnen helfen.

+0

Ich möchte nur einige Python-Skripte (die meisten Codes meines Projekts mit Java) aufrufen. Es scheint, dass kivy nicht gut mit Java kompatibel ist, und die Benutzeroberfläche unterscheidet sich von der nativen Android-App. – ZXF

+0

Ich habe einige Nachforschungen gemacht, ich weiß nicht, ob dieser Ihnen helfen könnte [Java Native Access (JNA)] (https://github.com/java-native-access/jna) – Sir1

1

Sie können dies tun. Es geht darum, den Python-Interpreter (kompiliert vom NDK) in Ihre App zu packen und über die Standard-NDK-Mechanismen zu starten. Dies ist die gleiche Sache, die z. Kivy tut das, aber du würdest den Code zu deiner eigenen App hinzufügen, anstatt (wie Kivy) einen Java-Bootstrap zu verwenden und dann alles andere zu verwalten.

Eine Option, die in letzter Zeit eine kleine Diskussion/Entwicklung gesehen hat, ist die Verwendung , um alle Python-Komponenten zu erstellen, dann kopieren Sie sie in Ihr Java-Projekt (und fügen Sie den Code hinzu). Dies ist möglich, aber derzeit nicht so einfach wie es sein könnte. Sie müssten intern prüfen, wie es funktioniert, um die benötigten Ausgaben zu erhalten. Eine weitere Option, die wahrscheinlich jetzt einfacher ist, wenn Sie kompilierten Code jenseits von Python selbst nicht benötigen, ist die direkte Verwendung der vorkompilierten Python-Binärdateien von CrystaX NDK. In diesem Fall werden die Python-Binärdateien nur zu Ihrer hinzugefügt Android.mk. Sie benötigen immer noch C- und NDK-Code, um mit dem Interpreter zu interagieren, aber der Prozess ist ziemlich einfach.

(SL4A hat einige eigene Android-Build-Tools, die Sie auch dafür verwenden könnten, aber ich weiß nicht, was Sie tun müssen, um es zu integrieren, da ich denke, dass SL4A zusätzliche Dinge zusätzlich tut der Python-Interpreter vorhanden ist).

+0

Ich finde nur einen Blog welcher referiert auf python.https: //www.crystax.net/blog/6, gibt es mehr Artikel oder eine Demo dazu? – ZXF

+0

Nicht wirklich, obwohl für das, was es wert ist, die einzelnen Schritte ziemlich Standard sind. Sie können sich die Unterstützung von python-for-android für python3 ansehen, um ein Beispiel für die Verwendung von crystax-Binärdateien zu erhalten, aber auch das wird schwierig sein, da es mit vielen anderen Funktionen verbunden ist. – inclement

Verwandte Themen