2010-06-18 20 views
20

का उपयोग मैं एंड्रॉइड एनडीके में नया हूं। मैं जानना चाहता हूं कि एंड्रॉइड में देशी कोड का क्या फायदा है। यह प्रदर्शन में सुधार कैसे करता है, और यह एंड्रॉइड में उपयोग किया जाने वाला (मूल कोड) कहां है?एंड्रॉइड एनडीके

+1

http://developer.android.com/sdk/ndk/index.html#overview –

+0

http://developer.android.com/training/articles/perf-tips.html#NativeMethods। इस उद्धरण को देखें "मूल कोड मुख्य रूप से तब उपयोगी होता है जब आपके पास मौजूदा मूल कोडबेस होता है जिसे आप एंड्रॉइड को पोर्ट करना चाहते हैं, न कि जावा भाषा के साथ लिखे गए आपके एंड्रॉइड ऐप के" तेज "भागों के लिए। – Roel

उत्तर

14

एनडीके आपको सी/सी ++ का उपयोग करके कोड लिखने की अनुमति देता है और फिर इसे अपने जावा एप्लिकेशन में लिंक करता है। आप संभावित रूप से अपने आवेदन की गति बढ़ा सकते हैं। हालांकि, Replica Island पढ़ने के लायक हो सकते हैं, क्योंकि वे एनडीके का उपयोग नहीं करते हैं, हालांकि बहुत तेजी से फ्रेम दर प्राप्त करते हैं।

एनडीके के डाउनसाइड्स हैं, यह केवल विशिष्ट CPUs के लिए संकलित है (जबकि जावा भूमि में रहना मतलब है कि यह एंड्रॉइड के किसी भी लक्षित संस्करण पर काम करेगा)।

+0

धन्यवाद मार्क ..... जहां से मैं इसका उदाहरण प्राप्त कर सकता हूं ??? – Andy

+2

जब आप इसे डाउनलोड करते हैं तो एनडीके फ़ोल्डर में उदाहरण हैं –

+0

हाँ धन्यवाद "डोनाल" मुझे मिला:) ... – Andy

9

Droid, आप गति के लिए अपने आवेदन को अनुकूलित करने के लिए मूल कोड का उपयोग कर सकते हैं। खासकर जब आपके कोड में बिट/बाइट ऑपरेशंस का उपयोग किया जाता है, जैसे कि आपको छवि फ़ाइलों आदि के संपीड़न/डिक्रप्रेशन करने की आवश्यकता होती है।

मूल सी कोड अंतर्निहित ऑपरेटिंग सिस्टम (लिनक्स) एपीआई (सिस्टम कॉल) का उपयोग करेगा, और इसलिए JVM के माध्यम से जब जावा कोड का व्याख्या करना होगा, उससे कहीं अधिक तेज़ होगा।

इसके अलावा, बड़े स्मृति की आवंटन (25-30 एमबी की धुन तक!) Malloc() का उपयोग करके मूल सी कोड का उपयोग करके किया जा सकता है। आवेदन की सीमाओं में जावा के माध्यम से कोडिंग करते समय यह संभव नहीं होगा।

अधिकांश खेल, आदि ध्वनि ...

तुम सिर्फ NDK के साथ शुरुआत कर रहे हैं, स्क्रीनशॉट के साथ एक आसान ट्यूटोरियल के लिए नीचे दिए गए लिंक की जाँच 2D/3D ग्राफिक्स, इनपुट के लिए देशी सी कोड लाइब्रेरी का उपयोग: http://mindtherobot.com/blog/452/android-beginners-ndk-setup-step-by-step/

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