जवाबों:
किवी का उपयोग करने का एक तरीका है :
मल्टी-टच एप्लिकेशन जैसे अभिनव उपयोगकर्ता इंटरफ़ेस का उपयोग करने वाले अनुप्रयोगों के तेजी से विकास के लिए ओपन सोर्स पायथन लाइब्रेरी।
किवी लिनक्स, विंडोज, ओएस एक्स, एंड्रॉइड और आईओएस पर चलता है। आप सभी समर्थित प्लेटफ़ॉर्म पर समान [अजगर] कोड चला सकते हैं।
नया एंड्रॉइड स्क्रिप्टिंग एनवायरनमेंट (ASE / SL4A) प्रोजेक्ट भी है। यह भयानक लग रहा है, और इसमें देशी एंड्रॉइड घटकों के साथ कुछ एकीकरण है।
नोट: "सक्रिय विकास" के तहत नहीं, लेकिन कुछ कांटे हो सकते हैं।
हाँ! : Android स्क्रिप्टिंग पर्यावरण
SL4A के माध्यम से मैट कट्स के माध्यम से एक उदाहरण - "यहां एक बारकोड स्कैनर है जिसे पायथन कोड की छह लाइनों में लिखा गया है:
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)
import android as a;d=a.Android();d.startActivity('android.intent.action.VIEW',"http://books.google.com?q=%d"%int(d.scanBarcode()['result']['SCAN_RESULT']))
Pygame Python (डेस्कटॉप पर) के लिए एक 2D गेम इंजन है जो नए प्रोग्रामर्स के साथ लोकप्रिय है। Android के लिए pygame सबसेट के रूप में वर्णन ...
... Android प्लेटफ़ॉर्म पर Pygame कार्यक्षमता का सबसेट का एक पोर्ट। परियोजना का लक्ष्य एंड्रॉइड-विशिष्ट गेम के निर्माण की अनुमति देना है, और पीसी जैसे प्लेटफॉर्म से एंड्रॉइड तक गेम की पोर्टिंग को कम करना है।
उदाहरणों में एक एपीके के रूप में पैक किया गया एक पूरा गेम शामिल है, जो काफी दिलचस्प है।
मेरे ब्लॉग में एंड्रॉइड के लिए पायथन 2.7.2 को पार करने के लिए निर्देश और एक पैच है।
मैंने अपने 2 डी गेम इंजन इग्निफ्यूगा को भी खोला है । यह पायथन / एसडीएल आधारित है, और यह एंड्रॉइड के लिए क्रॉस संकलन करता है। यहां तक कि अगर आप इसे गेम के लिए उपयोग नहीं करते हैं, तो आपको कोड या बिल्डर उपयोगिता ( टिमर के बाद का नाम Schafer , ... आपको पता है) से उपयोगी विचार मिल सकते हैं ।
SL4A वही करता है जो आप चाहते हैं। आप इसे आसानी से अपनी डिवाइस पर सीधे उनकी साइट से स्थापित कर सकते हैं, और रूट की आवश्यकता नहीं है।
यह कई भाषाओं का समर्थन करता है। पायथन सबसे परिपक्व है। डिफ़ॉल्ट रूप से, यह पायथन 2.6 का उपयोग करता है, लेकिन एक 3.2 पोर्ट है जिसे आप इसके बजाय उपयोग कर सकते हैं। मैंने गैलेक्सी S2 पर सभी तरह की चीजों के लिए उस पोर्ट का उपयोग किया है और यह ठीक काम किया है।
SL4A android
प्रत्येक समर्थित भाषा के लिए अपने पुस्तकालय का एक बंदरगाह प्रदान करता है । पुस्तकालय एक Android
वस्तु के माध्यम से अंतर्निहित एंड्रॉइड एपीआई के लिए एक इंटरफ़ेस प्रदान करता है ।
from android import Android
droid = Android()
droid.ttsSpeak('hello world') # example using the text to speech facade
प्रत्येक भाषा में बहुत अधिक समान एपीआई है। आप वेबवार्ता के अंदर जावास्क्रिप्ट एपीआई का उपयोग भी कर सकते हैं।
let droid = new Android();
droid.ttsSpeak("hello from js");
उपयोगकर्ता इंटरफ़ेस के लिए, आपके पास तीन विकल्प हैं:
आप विकल्पों को मिला सकते हैं, इसलिए आपके पास मुख्य इंटरफ़ेस के लिए एक वेबव्यू हो सकता है, और अभी भी देशी संवादों का उपयोग कर सकते हैं।
QPython नाम का एक थर्ड पार्टी प्रोजेक्ट है । यह SL4A पर बनाता है, और कुछ अन्य उपयोगी सामान में फेंकता है।
QPython आपको अपनी स्थापना का प्रबंधन करने के लिए एक अच्छे UI देता है, और इसमें पैकेज प्रबंधन के लिए एक छोटा, टचस्क्रीन कोड एडिटर, पायथन शेल और एक PIP शेल शामिल होता है। उनके पास पायथन 3 पोर्ट भी है। दोनों संस्करण मुफ्त में प्ले स्टोर से उपलब्ध हैं। QPython भी Kivy सहित एंड्रॉइड प्रोजेक्ट्स पर पायथन के झुंड से पुस्तकालयों को बंडल करता है, इसलिए यह सिर्फ SL4A नहीं है।
ध्यान दें कि QPython अभी भी SL4A के अपने कांटे विकसित करता है (हालांकि, ईमानदार होने के लिए बहुत ज्यादा नहीं)। मुख्य SL4A परियोजना अपने आप में बहुत अधिक मृत है।
एक के रूप में अजगर प्रेमी और एंड्रॉयड प्रोग्रामर, मैं कहना है कि यह एक अच्छा रास्ता तय करना नहीं है उदास हूँ। दो समस्याएं हैं:
एक समस्या यह है कि एंड्रॉइड डेवलपमेंट टूल्स के लिए सिर्फ प्रोग्रामिंग भाषा की तुलना में बहुत अधिक है। बहुत सारे एंड्रॉइड ग्राफिक्स HTML के समान डिस्प्ले को कॉन्फ़िगर करने के लिए एक्सएमएल फाइलें शामिल करते हैं। बिल्ट-इन जावा ऑब्जेक्ट्स इस XML लेआउट के साथ एकीकृत हैं, और यह तर्क से बिटमैप पर जाने के लिए आपके कोड को लिखने से बहुत आसान है।
दूसरी समस्या यह है कि जी 1 (और निकट भविष्य के लिए शायद अन्य एंड्रॉइड डिवाइस) इतनी तेज़ नहीं हैं। 200 MHz प्रोसेसर और RAM बहुत सीमित है। जावा में भी, यदि आपको अपने ऐप को सुचारू बनाना है, तो आपको पुनर्लेखन-से-बचने-अधिक-ऑब्जेक्ट-निर्माण के लिए एक अच्छी मात्रा में करना होगा। मोबाइल उपकरणों पर अभी भी थोड़ी देर के लिए अजगर बहुत धीमा होने वाला है।
मैं जोड़ना चाहता था कि @JohnMudd ने Kivy के बारे में क्या लिखा है। इस स्थिति का वर्णन किए हुए कई साल हो गए हैं, और कीवी काफी विकसित हुई है।
मेरी राय में, किवी का सबसे बड़ा विक्रय बिंदु इसकी क्रॉस-प्लेटफॉर्म संगतता है। आप किसी भी डेस्कटॉप वातावरण (विंडोज / * निक्स इत्यादि) का उपयोग करके सब कुछ कोड और परीक्षण कर सकते हैं, फिर अपने ऐप को विभिन्न प्लेटफार्मों की एक श्रृंखला के लिए पैकेज कर सकते हैं, जिसमें एंड्रॉइड, आईओएस, मैकओएस और विंडोज शामिल हैं (हालांकि ऐप में अक्सर देशी लुक और महसूस की कमी होती है)।
किवी की अपनी KV भाषा के साथ, आप GUI इंटरफ़ेस को आसानी से कोड कर सकते हैं और उसका निर्माण कर सकते हैं (यह सिर्फ Java XML की तरह है, लेकिन TextView आदि के बजाय, KV का ui.widgets
समान अनुवाद के लिए अपना स्वयं का है ), जो कि मेरी राय में इसे अपनाना काफी आसान है।
वर्तमान में Buildozer और python-for-android आपके एप्लिकेशन बनाने और पैकेज करने के लिए सबसे अनुशंसित उपकरण हैं। मैंने उन दोनों की कोशिश की है और दृढ़ता से कह सकता हूं कि वे पायथन के साथ एंड्रॉइड ऐप का निर्माण कर रहे हैं। उनके गाइड अच्छी तरह से प्रलेखित हैं।
iOS किवी का एक और बड़ा विक्रय बिंदु है। आप किवी-आईओएस होमब्रेव टूल्स के माध्यम से आवश्यक कुछ परिवर्तनों के साथ एक ही कोड बेस का उपयोग कर सकते हैं , हालांकि उनके डिवाइस पर चलने से पहले Xcode की आवश्यकता होती है, (AFAIK iOS सिम्युलेटर इन Xcode वर्तमान में x86- आर्किटेक्चर बिल्ड के लिए काम नहीं करता है । कुछ निर्भरता के मुद्दे भी हैं जिन्हें मैन्युअल रूप से संकलित किया जाना चाहिए और एक सफल बिल्ड होने के लिए Xcode में चारों ओर फिड किया जाना चाहिए, लेकिन उन्हें हल करना बहुत मुश्किल नहीं होगा और किवी Google समूह के लोग वास्तव में बहुत उपयोगी हैं।
कहा जा रहा है कि सभी के साथ, अच्छे पायथन ज्ञान वाले उपयोगकर्ताओं को मूल बातें जल्दी लेने में कोई समस्या नहीं होनी चाहिए।
यदि आप अधिक गंभीर परियोजनाओं के लिए कीवी का उपयोग कर रहे हैं, तो आपको मौजूदा मॉड्यूल असंतोषजनक लग सकते हैं। हालांकि कुछ व्यावहारिक समाधान हैं। एंड्रॉइड के लिए पायजनीस और पाइबोजस में काम (प्रगति में काम) के साथ , अब उपयोगकर्ता कुछ मूल एपीआई को नियंत्रित करने के लिए जावा / ऑब्जेक्टिव-सी कक्षाओं का उपयोग कर सकते हैं।
ScreenManager
क्योंकि इससे आपका समय बचेगा। इसके अलावा सलाह का एक टुकड़ा उनकी मेलिंग सूची को पढ़ने के लिए है, वहां के जानकार लोगों का एक समूह आपकी मदद करने के लिए तैयार है।
पाइथन को स्थापित करने के लिए, आप एंड्रॉइड के लिए एक POSIX वातावरण प्रदान करने वाले टर्मक्स ऐप का उपयोग कर सकते हैं ।
ध्यान दें कि apt install python
टर्मक्स पर पायथन 3 स्थापित होगा। Python2 के लिए, आपको उपयोग करने की आवश्यकता है apt install python2
।
फिलहाल नहीं और आप जल्द ही काम करने के लिए जाइथन को पाकर खुशकिस्मत होंगे। यदि आप अपना विकास शुरू करने की योजना बना रहे हैं, तो आप अभी के लिए जावा से चिपके रहने से बेहतर होंगे।
SL4A (जो पहले से ही अन्य उत्तरों में स्वयं द्वारा उल्लिखित है) का उपयोग करके आप एक पूर्ण विकसित web2py उदाहरण चला सकते हैं (अन्य अजगर वेब चौखटे संभावित उम्मीदवार भी हैं)। SL4A आपको देशी UI घटक (बटन, स्क्रॉल बार और इसी तरह) करने की अनुमति नहीं देता है, लेकिन यह WebViews का समर्थन करता है । एक WebView मूल रूप से एक निर्धारित पते पर बताई गई वेब ब्राउजर से ज्यादा कुछ नहीं है। मेरा मानना है कि मूल जीमेल ऐप नियमित विजेट मार्ग पर जाने के बजाय एक वेब व्यू का उपयोग करता है।
इस मार्ग में कुछ दिलचस्प विशेषताएं होंगी:
मैं QPython ऐप का उपयोग करता हूं । यह मुफ़्त है और इसमें एक कोड संपादक, एक इंटरएक्टिव इंटरप्रेटर और एक पैकेज मैनेजर शामिल है, जो आपको अपने डिवाइस पर सीधे पायथन प्रोग्राम बनाने और निष्पादित करने की अनुमति देता है।
Android साइट के लिए पायथन से :
एंड्रॉइड के लिए पायथन एक प्रोजेक्ट है जो आप चाहते हैं कि मॉड्यूल सहित अपना खुद का पायथन वितरण बनाएं, और अजगर, लिबास और आपके एप्लिकेशन सहित एक एपीके बनाएं।
Chaquopy एंड्रॉइड स्टूडियो के ग्रैडल-आधारित बिल्ड सिस्टम के लिए एक प्लगइन है। यह मानक Android विकास उपकरणों के साथ घनिष्ठ एकीकरण पर केंद्रित है ।
यह जावा से अजगर या पायथन से जावा को कॉल करने के लिए पूर्ण एपीआई प्रदान करता है , जिससे डेवलपर को अपने ऐप के प्रत्येक घटक के लिए जो भी सबसे अच्छी भाषा का उपयोग करने की अनुमति मिलती है।
यह स्वचालित रूप से PyPI पैकेजों को डाउनलोड कर सकता है और उन्हें एक ऐप में बना सकता है, जिसमें चयनित देशी पैकेज जैसे कि NumPy भी शामिल है।
यह देशी उपयोगकर्ता इंटरफ़ेस टूलकिट ( उदाहरण-शुद्ध पायथन गतिविधि ) सहित पायथन से सभी एंड्रॉइड एपीआई तक पूर्ण पहुंच सक्षम करता है ।
यह एक वाणिज्यिक उत्पाद है, लेकिन यह ओपन-सोर्स उपयोग के लिए स्वतंत्र है और हमेशा इस तरह रहेगा।
(मैं इस उत्पाद का निर्माता हूं।)
फिर भी एक और प्रयास: https://code.google.com/p/android-python27/
यह आपके ऐप एपीके में सीधे पायथन दुभाषिए को एम्बेड करता है।
यहाँ कुछ उपकरण आधिकारिक अजगर वेबसाइट में सूचीबद्ध हैं
Playstore में QPython3 नाम का एक ऐप है जो कि पाइथन स्क्रिप्ट को एडिट करने और चलाने दोनों के लिए इस्तेमाल किया जा सकता है।
एक अन्य ऐप जिसे टर्मक्स कहा जाता है जिसमें आप कमांड का उपयोग करके अजगर को स्थापित कर सकते हैं
pkg install python
यदि आप ऐप्स विकसित करना चाहते हैं, तो पायथन एंड्रॉइड स्क्रिप्टिंग लेयर ( SL4A ) है ।
The Scripting Layer for Android, SL4A, is an open source application that allows programs written in a range of interpreted languages to run on Android. It also provides a high level API that allows these programs to interact with the Android device, making it easy to do stuff like accessing sensor data, sending an SMS, rendering user interfaces and so on.
आप एंड्रॉइड के लिए PySide भी जांच सकते हैं , जो वास्तव में Qt 4 के लिए पायथन बाइंडिंग है।
PyMob नाम का एक प्लेटफ़ॉर्म है, जहाँ ऐप को पूरी तरह से Python में लिखा जा सकता है और कंपाइलर टूल-फ़्लो (PyMob) उन्हें विभिन्न प्लेटफार्मों के लिए मूल स्रोत कोड में परिवर्तित करता है।
इसके अलावा अजगर के लिए Android की जाँच करें
python-for-android is an open source build tool to let you package Python code into standalone android APKs. These can be passed around, installed, or uploaded to marketplaces such as the Play Store just like any other Android app. This tool was originally developed for the Kivy cross-platform graphical framework, but now supports multiple bootstraps and can be easily extended to package other types of Python apps for Android.
Android के लिए Chaquopy एक पायथन एसडीके का प्रयास करें
अंडडड ... बीवर
BeeWare allows you to write your app in Python and release it on multiple platforms. No need to rewrite the app in multiple programming languages. It means no issues with build tools, environments, compatibility, etc.
आप QPython का उपयोग कर सकते हैं :
इसमें पाइथन कंसोल, एडिटर, साथ ही पैकेज मैनेजमेंट / इंस्टॉलर हैं
यह पायथन 2 और पायथन 3 कार्यान्वयन के साथ एक ओपन सोर्स प्रोजेक्ट है। आप स्रोत और Android .apk फ़ाइलों को सीधे जीथब से डाउनलोड कर सकते हैं।
QPython 2: https://github.com/qpython-android/qpython/releases
QPython 3: https://github.com/qpython-android/qpython3/releases
एक अन्य विकल्प यदि आप 3.4.2 या 3.5.1 की तलाश में हैं तो यह GitHub पर संग्रह है।
पायथन 3-एंड्रॉइड 3.4.2 या पायथन 3-एंड्रॉइड 3.5.1
यह वर्तमान में पायथन 3.4.2 या 3.5.1 और NDK के 10d संस्करण का समर्थन करता है। यह 3.3 और 9c, 11c और 12 को भी सपोर्ट कर सकता है
यह अच्छा है कि आप इसे डाउनलोड करें, रन बनाएं और आपको .so या .A मिल जाए
मैं वर्तमान में Android उपकरणों पर कच्चे पायथन को चलाने के लिए इसका उपयोग करता हूं। बिल्ड फ़ाइलों के लिए कुछ संशोधनों के साथ आप x86 और armeabi 64 बिट भी बना सकते हैं
यहाँ इस पोस्ट को नहीं देखा, लेकिन आप इसे Pyside और Qt के साथ कर सकते हैं क्योंकि Qt एंड्रॉइड पर Noubitas के लिए काम करता है।
यह इस समय काफी कीचड़ लगता है लेकिन अंततः एक व्यवहार्य मार्ग हो सकता है ...
एक और विकल्प pyqtdeploy लगता है जो डॉक्स का हवाला देता है:
एक उपकरण जो Qt के साथ प्रदान किए गए अन्य उपकरणों के साथ संयोजन में, Pytht4 और PyQt5 अनुप्रयोगों को Python v2.7 या Python v3.3 या बाद के साथ लिखा जाता है। यह डेस्कटॉप प्लेटफार्मों (लिनक्स, विंडोज और ओएस एक्स) और मोबाइल प्लेटफार्मों (आईओएस और एंड्रॉइड) पर तैनाती का समर्थन करता है।
PyQt5 एप्लिकेशन को Android पर pyqtdeploy और Qt5 के माध्यम से नियुक्त करने के अनुसार इसे सक्रिय रूप से विकसित किया गया है, हालांकि एंड्रॉइड के सभी आवश्यक पुस्तकालयों को क्रॉस-कंपाइल करने के तरीके पर काम करने वाले एंड्रॉइड ऐप या ट्यूटोरियल के उदाहरणों को खोजना मुश्किल है। हालांकि यह ध्यान में रखना एक दिलचस्प परियोजना है!
BeeWare पर एक नज़र डालें । इस प्रश्न का उत्तर देने के समय यह अभी भी शुरुआती विकास में है। इसका उद्देश्य एंड्रॉइड सहित सभी समर्थित ऑपरेटिंग सिस्टम के लिए पायथन के साथ मूल एप्लिकेशन बनाने में सक्षम होना है।
एनामल-मूल की जांच करें जो प्रतिक्रिया-मूल अवधारणा लेता है और इसे अजगर पर लागू करता है।
यह उपयोगकर्ताओं को देशी एंड्रॉइड विजेट के साथ ऐप बनाने देता है और अजगर से एंड्रॉइड और जावा लाइब्रेरी का उपयोग करने के लिए एपीआई प्रदान करता है।
यह एंड्रॉइड-स्टूडियो के साथ भी जुड़ता है और कुछ रिएक्शन के अच्छे देव फीचर्स को कोड रीलोडिंग और रिमोट डीबगिंग के साथ साझा करता है।