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?
Antwort
Sie können Kivy auf folgenden Link:
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.
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
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
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).
Ich finde nur einen Blog welcher referiert auf python.https: //www.crystax.net/blog/6, gibt es mehr Artikel oder eine Demo dazu? – ZXF
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
- 1. Gibt es eine Möglichkeit, Theano ohne Nvidia zu installieren
- 2. Gibt es eine Möglichkeit, gcc in OSX zu installieren, ohne Xcode zu installieren?
- 3. Gibt es eine Möglichkeit, benutzerdefinierte SmartArt zu entwickeln?
- 4. gibt es alternative Möglichkeit, Scrapy zu installieren?
- 5. Gibt es eine Möglichkeit, Audio-Snippets in C# zu spielen, ohne das DirectX-SDK zu installieren?
- 6. Gibt es eine Möglichkeit, vorgeschlagene Composer-Pakete interaktiv zu installieren?
- 7. Gibt es eine einfache Möglichkeit, TypeScript-Definitionen zu installieren?
- 8. Gibt es eine Möglichkeit, PostSharp zu verwenden, ohne das Paket zu installieren?
- 9. Gibt es eine Möglichkeit, die Android SDK-Installation zu automatisieren?
- 10. Gibt es eine Möglichkeit, eine Gleitkommazahl ohne ldexp zu erstellen?
- 11. Gibt es eine Möglichkeit, das Bereitstellungsprofil auf einem iOS-Gerät ohne Xcode in iTunes zu installieren?
- 12. Gibt es eine Möglichkeit, ruby1.9 aufzurufen, ohne Rubygems zu laden?
- 13. Gibt es eine Möglichkeit, Winkel 2 ohne Modullader zu verwenden?
- 14. Gibt es eine Möglichkeit, Asio ohne Boost arbeiten zu lassen?
- 15. Gibt es eine Möglichkeit, schleichende Linie ohne Flackern zu erzeugen?
- 16. Gibt es eine Möglichkeit, Tastaturereignisse ohne JFrame zu erhalten?
- 17. Gibt es eine Möglichkeit, einen Sicherungspunkt ohne Transaktion zu erstellen?
- 18. Gibt es eine Möglichkeit, Maschineneigenschaften ohne Vagabund zu überprüfen?
- 19. Gibt es eine Möglichkeit, JNLP ohne Zertifikate zu machen?
- 20. Gibt es eine Möglichkeit, Webkonsolenfehler zu erkennen?
- 21. Gibt es eine Möglichkeit, "träge" zu lesen?
- 22. Gibt es eine Möglichkeit, South zu konfigurieren, um zu migrieren, ohne irgendwelche Fragen zu stellen?
- 23. Gibt es eine Möglichkeit, das .NET 3.5 Framework ohne Neustart zu installieren?
- 24. Gibt es eine Möglichkeit, Typdeklarationen zu erweitern?
- 25. Gibt es eine Möglichkeit, eine ältere Version von Safari zu installieren/zu emulieren? (d. h. 8)
- 26. IE7 testen, ohne es zu installieren - wie?
- 27. Android - Gibt es eine bessere Möglichkeit, dieses Layout zu erstellen?
- 28. Gibt es eine Möglichkeit, android zu setzen: windowSoftInputMode von Fragment?
- 29. Gibt es eine Möglichkeit, Layouts zu animieren? [Android]?
- 30. Gibt es eine Möglichkeit, Datenbanktransaktionen zu beschleunigen?
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