2010-04-23 8 views
5

मेरे ऐप को एक लाइब्रेरी का उपयोग करने की आवश्यकता है जो केवल पायथन और रूबी के लिए उपलब्ध है। मेरी समझ से, ऐप्पल रूबी को आईफोन पर चलाने की इजाजत देता है जब तक कि उपयोगकर्ता मनमाने ढंग से कोड निष्पादित नहीं कर सकते (Rhomobile रुबी का उपयोग करता है)।एक आईफोन ओएस ऐप में रुबी/पायथन कोड का उपयोग करना?

मैं अपने ऐप के साथ रुबी/पायथन को कैसे बंडल कर सकता हूं, मेरे ओबीजे-सी कोड से एक फ़ंक्शन कॉल कर सकता हूं, और परिणाम (स्ट्रिंग) सी या ओब्जे-सी प्रारूप में वापस प्राप्त कर सकता हूं?

उत्तर

3

आप नहीं कर सकते। नया एसडीके समझौता prohibits using original languages other than C, C++, or Objective-C, और एसडीके समझौते ने हमेशा गतिशील रूप से कोड को व्याख्या करने पर रोक लगा दी है। इन नियमों को लागू करने के तरीके के बारे में कुछ अस्पष्टता है, लेकिन सुरक्षित होने के लिए, जब तक कि कंकों का काम नहीं हो जाता तब तक अन्य भाषाओं से बचना सर्वोत्तम होता है।

संपादित करें: इसके अलावा, जहां तक ​​मुझे पता है, आईफोन पर पाइथन चलाने के लिए कोई मौजूदा तकनीकी तरीका नहीं है, this question के अनुसार। मैंने आईफोन ऐप्स में लुआ को एम्बेड करने के बारे में सुना है, लेकिन पायथन नहीं। आप Python with a jailbroken iPhone कर सकते हैं, लेकिन ऐप स्टोर के माध्यम से नहीं।

रूबी की स्थिति this question के अनुसार लगभग खराब है। आईफोन एक रूबी दुभाषिया के साथ नहीं भेजता है, और compilers काम करने से दूर एक लंबा रास्ता है। Rhomobile निष्पादन योग्य के साथ एक दुभाषिया और ढांचे को पैकेजिंग द्वारा काम करता है, जो मुझे अत्यधिक संदेह है कि यह नए एसडीके समझौते को खत्म कर देगा। यदि आप वास्तव में रूबी का उपयोग करना चाहते हैं, तो रोमोबाइल शायद सबसे अच्छा शर्त होगा (जैसा कि आपके स्वयं के दुभाषिया को लागू करना शायद बहुत अधिक काम होगा, और समान रूप से अनुमोदित होने की संभावना नहीं है)। इस समय यह एक निराशाजनक परिदृश्य है - हम उम्मीद कर सकते हैं कि मैकरुबी अंततः काम करेगा, और ऐप्पल इसे मंजूरी देगी। हालांकि, यह एक लंबा रास्ता है।

संपादित 2: मुझे अभी भी लगभग tinypy पता चला है, जो शायद पाइथन के लिए काम कर सकता है। मुझे संदेह है कि यह वास्तविक पुस्तकालयों को चलाएगा हालांकि।

+0

मैं ऐप्पल के साथ अपनी संभावनाएं लेने के लिए तैयार हूं; मुझे लगता है कि वे मुझे जाने देंगे। क्या किसी को भी यह करना आता है? – igul222

+7

@ igul222, आपको गलत लगता है। –

+0

हाँ, मुझे उस टिप्पणी की उम्मीद थी। मुझे एहसास है कि यह किसी भी खिंचाव से आदर्श नहीं है, लेकिन वास्तव में कोई सी/सी ++/ओबीजेसी विकल्प नहीं है (सर्वर पर प्रसंस्करण करने से कम और परिणाम वापस भेजना, जिसके लिए नेटवर्क कनेक्शन की आवश्यकता है)। भविष्य में कुछ तोड़ने पर ऐप शानदार ढंग से गिरावट आएगा, लेकिन एकमात्र वास्तविक विकल्प सी में लाइब्रेरी को फिर से लिख रहा है, एक विकल्प इतना दर्दनाक (कम से कम एक अनुभवहीन प्रोग्रामर के लिए) कि मैं कम से कम इसे आजमा देना चाहता हूं पहले मार्ग। – igul222

3

एफवाईआई ऐप स्टोर पर कई रोमोबाइल रोड्स-आधारित ऐप्स हैं जिनमें विकिपीडिया, माईहुमाना, शुगरसीएम, बहुभाषी, ट्रैकआर, ​​और दर्जनों के लिए RhoLogic शामिल हैं। http://rhomobile.com पर कई बाहर हैं। हम अक्सर ऐप्पल से बात करते हैं और सभी आईओएस शर्तों के साथ चल रहे अनुपालन को बीमा करने के लिए कदम उठाते हैं।

यह भी कड़ाई से बोल रहा है कि आपके अंतिम मूल ऐप के साथ कौन सा जहाजों एक दुभाषिया नहीं है लेकिन (सभी प्लेटफॉर्म पर लेकिन ब्लैकबेरी) रूबी 1.9 बाइटकोड निष्पादक है। और सच्ची व्याख्या (eval) जानबूझकर अक्षम है।

संबंधित मुद्दे