Saya ingin mengembangkan aplikasi android (yang agak sederhana) untuk didistribusikan melalui Play Store. Saya ingin melakukannya sepenuhnya dengan python. Namun, penelitian online belum cukup mencerahkan saya: sebagian besar komentar sudah usang (> 1 tahun, dan saya merasa mungkin ada integrasi python yang lebih baik sejak saat itu) atau mereka berbicara tentang menjalankan python di android (misalnya di sini ).
Oleh karena itu, saya mencari informasi mengenai pertanyaan:
- apakah layak untuk mengembangkan Aplikasi sepenuhnya dengan python - dan apa alat untuk melakukannya? (Apakah misalnya Kivy direkomendasikan?)
- jika ya: apa lingkungan perangkat lunak terbaik untuk menerapkan ini? (Saya tidak berhasil mencoba menggunakan Android Studio tetapi tidak dapat menemukan cara untuk menjalankan kode python di sana.)
Saya cukup baru dalam pengembangan aplikasi dan akan sangat menghargai petunjuk apa pun untuk melakukan ini dengan python daripada di Jave dll, yang belum saya ketahui.
Terima kasih banyak atas bantuan Anda sebelumnya.
Jawaban:
Untuk menjawab pertanyaan pertama Anda: ya, layak untuk mengembangkan aplikasi android dengan python murni , untuk mencapai ini saya sarankan Anda menggunakan BeeWare , yang hanya merupakan seperangkat alat python , yang bekerja sama dengan sangat baik dan memungkinkan Anda untuk mengembangkannya. platform aplikasi asli dengan python.
checkout video ini oleh pencipta BeeWare yang sempurna menjelaskan dan menunjukkan aplikasi itu
Bagaimana itu bekerja
Bahasa implementasi yang disukai Android adalah Java - jadi jika Anda ingin membuat aplikasi Android dengan Python, Anda harus memiliki cara untuk menjalankan kode Python Anda di Mesin Virtual Java. Inilah yang dilakukan VOC . VOC adalah transpiler - ia mengambil kode sumber Python, mengkompilasinya ke CPython Bytecode, dan kemudian mentranspilasi bytecode itu ke bytecode yang kompatibel dengan Java. Hasil akhirnya adalah file kode sumber Python Anda dikompilasi langsung ke file .class Java, yang dapat dipaketkan ke dalam aplikasi Android.
VOC juga memungkinkan Anda untuk mengakses objek Java asli seolah-olah objek itu adalah objek Python, mengimplementasikan antarmuka Java dengan kelas Python, dan subkelas kelas Java dengan kelas Python. Dengan ini, Anda dapat menulis aplikasi Android langsung pada API Android asli.
Setelah Anda menulis aplikasi Android asli Anda, Anda dapat menggunakan Briefcase untuk mengemas kode Python Anda sebagai aplikasi Android.
Tas kerja adalah alat untuk mengubah proyek Python menjadi aplikasi asli mandiri. Anda dapat mengemas proyek untuk:
Anda dapat memeriksa Aplikasi asli Android Tic Tac Toe ini ditulis dengan Python, menggunakan suite BeeWare. di GitHub
Selain alat BeeWare, Anda harus sudah menginstal JDK dan Android SDK untuk menguji aplikasi Anda.
dan untuk menjawab pertanyaan kedua Anda: lingkungan yang baik dapat berupa apa pun yang Anda sukai baik itu editor teks dan baris perintah, atau IDE, jika Anda mencari IDE python yang bagus, saya sarankan Anda mencoba Pycharm , yang memiliki edisi komunitas yang gratis, dan memiliki lingkungan yang mirip dengan studio android, karena fakta yang dibuat oleh perusahaan yang sama.
Saya harap ini membantu
sumber
Anda dapat mencoba BeeWare - seperti yang dijelaskan di situs web mereka:
Memberikan Anda ingin sekarang Anda ingin menulis Aplikasi Android dengan Python, plus memiliki keuntungan bahwa Anda tidak perlu mempelajari kerangka kerja lain lagi di masa depan jika Anda akhirnya juga ingin melakukan sesuatu di salah satu platform terdaftar lainnya.
Berikut Tutorial untuk Aplikasi Android .
sumber
Ada dua pesaing utama untuk aplikasi python di Android
Chaquopy
https://chaquo.com/chaquopy/
Ini terintegrasi dengan sistem build Android, menyediakan Python API untuk semua fitur android. Mengutip situs "API Android lengkap dan perangkat antarmuka pengguna siap membantu Anda."
Waspadalah (toolkit widget Toga)
https://pybee.org/
Ini menyediakan transpiler multi target, mendukung banyak target seperti Android dan iOS. Ini menggunakan toolkit widget (toga) generik yang memetakan ke panggilan antarmuka host.
Yang mana?
Keduanya adalah proyek aktif dan akun github mereka menunjukkan cukup banyak aktivitas terkini.
Berhati-hatilah Toga seperti semua pustaka widget bagus untuk mendapatkan dasar-dasarnya ke berbagai platform. Jika Anda memiliki desain dasar, dan keinginan untuk memperluas ke platform lain, ini akan bekerja dengan baik untuk Anda.
Di sisi lain, Chaquopy jauh lebih tepat dalam memetakan API python ke Android. Ini juga memungkinkan Anda untuk menggabungkan Java, berguna jika Anda ingin menggunakan kode yang ada dari sumber lain. Jika Anda memiliki target desain yang ketat, dan terutama ingin menargetkan Android, ini adalah sumber daya yang jauh lebih baik.
sumber
Android, Python!
Ketika saya melihat dua kata kunci ini bersama-sama dalam pertanyaan Anda, Kivy adalah salah satu yang datang ke pikiran pertama saya.
Sebelum datang ke pengembangan Android asli di Java menggunakan Android Studio, saya telah mencoba Kivy . Itu luar biasa. Inilah beberapa keuntungan yang bisa saya temukan.
Mudah digunakan
Dengan dasar python, Anda tidak akan kesulitan mempelajarinya.
Komunitas yang baik
Ini didokumentasikan dengan baik dan memiliki komunitas yang aktif dan hebat.
Lintas platform.
Anda dapat mengembangkan sesuatu untuk Android, iOS, Windows, Linux dan bahkan Raspberry Pi dengan kerangka tunggal ini. Sumber terbuka.
Ini adalah perangkat lunak gratis
Setidaknya beberapa dari kompetitor (Cross platform) itu ingin Anda membayar jika Anda menginginkan lisensi komersial.
Dukungan grafis yang dipercepat
Mesin grafis Kivy yang dibangun di atas OpenGL ES 2 membuatnya sesuai untuk perangkat lunak yang memerlukan rendering grafis cepat seperti game.
Sekarang masuk ke bagian pertanyaan selanjutnya, Anda tidak dapat menggunakan Android Studio IDE untuk Kivy. Berikut adalah panduan rinci untuk menyiapkan lingkungan pengembangan.
sumber