प्लगइन्स के साथ एंड्रॉइड स्टूडियो और इंटेलीज आइडिया के बीच अंतर?


117

हमारे पास एक मौजूदा जावा कोड आधार है जहां हम विकास के लिए गहन विचार का उपयोग करते हैं।

हम एक एंड्रॉइड एप्लिकेशन का निर्माण कर रहे हैं जहां हम कोड और अन्य संसाधनों को पहले से मौजूद कोड और संसाधन आधार के साथ साझा करेंगे।

जैसा कि एंड्रॉइड स्टूडियो को लगता है कि मुख्य रूप से Intellij का एक संशोधित संस्करण है, मेरे सवाल हैं कि क्या पूरी तरह से विशिष्ट विशेषताएं Android स्टूडियो में अपरिहार्य हैं? असंगत? "मानक"? बनाम इंटेलीज आइडिया समुदाय या अंतिम? एक उचित प्लगइन सेट के साथ दो विनिमेय हैं?

अगर हम विभिन्न Android समर्थन प्लगइन्स के साथ Intellij Idea का उपयोग करते हैं, तो क्या ये प्लगइन्स एंड्रॉइड स्टूडियो के साथ आते हैं? प्लगइन्स के इस सेट के साथ कार्यक्रम लगभग विनिमेय हो जाएंगे?

(मैंने देखा कि "चींटी" समर्थन एंड्रॉइड स्टूडियो में नहीं है। हालांकि मुझे सभी की जरूरत है आईडीई से निष्पादन योग्य कुछ वस्तुओं को विभिन्न कमांड के लिए मेनू कॉन्फ़िगर करने योग्य प्रविष्टियों के सेट से आह्वान करने की क्षमता है - मैं अब यह करने के लिए intellij चींटी समर्थन का उपयोग करता हूं क्योंकि उपलब्ध था)

क्या इंटेलीज हमेशा Android स्टूडियो होने के नाते रिलीज होने में पिछड़ जाएगा क्योंकि यह Google का "आधिकारिक" टूल है।

यदि वे काफी असंगत हैं, तो दो प्रणालियों के बीच सामान्य संसाधनों और उपकरणों का उपयोग करने का सबसे आसान तरीका क्या है?


3
मैंने कुछ शोध किया था लेकिन ये सवाल आंशिक रूप से शोर के माध्यम से काटने के लिए हैं। मुझे इस प्रकृति के कई अन्य प्रश्न मिलते हैं और उत्तर लोगों को सहायता प्रदान करते हैं। अक्सर सरल चीजें सबसे कठिन होती हैं, जिनके वास्तविक उत्तर ढूंढना मुश्किल होता है। अगर मुझे लगता है और मेरे सवाल का जवाब जो भी साधनों और किसी अन्य तरीके से दिया गया है, तो मैंने इसका जवाब नहीं दिया।
पीटर जू

10
मुझे यहाँ प्रस्तुत एक मत-आधारित प्रश्न दिखाई नहीं देता है। ओपी विशिष्ट तकनीकी अंतरों के लिए पूछ रहा है।

इसके अलावा, एक अच्छा विषय है, जिसका उत्तर अप-टू-डेट रखा जा रहा है।
रयान एम

जवाबों:


80

अपडेटेड उत्तर नवंबर 2019

अतीत में, एंड्रॉइड स्टूडियो में कोई कार्यक्षमता नहीं थी जो कि एंड्रॉइड प्लग इन के साथ IntelliJ IDEA में मौजूद नहीं थी। हालाँकि, अपनी स्थापना के बाद से, एंड्रॉइड स्टूडियो बड़ा हो गया है और विशेष रूप से हाल ही में, इंटेलीज आईडीईए से अधिक से अधिक विचलन कर चुका है। अब एंड्रॉइड स्टूडियो में कुछ प्लगइन्स बंडल किए गए हैं जो इंटेलीजे आईडीईए के साथ संगत नहीं हैं। ऐसा ही एक उदाहरण एंड्रॉइड एपीके सपोर्ट है, जो पहली बार जून 2019 में जारी किया गया था। इसके अलावा, एंड्रॉइड स्टूडियो के साथ बंडल किए गए कुछ एंड्रॉइड आधारित प्लगइन्स भी हैं जो जेटब्रेन प्लगइन्स साइट (इस समय) जैसे "एंड्रॉइड गेम्स" पर सूचीबद्ध नहीं हैं, "एंड्रॉइड एनडीके सपोर्ट", "ऐप लिंक असिस्टेंट", दूसरों के बीच।

इस प्रकार, इस समय, एंड्रॉइड प्रोजेक्ट्स के लिए एंड्रॉइड स्टूडियो का उपयोग करना, और किसी भी सहायक विकास के लिए IntelliJ IDEA का उपयोग करना सबसे अच्छा है, जैसे कि सर्वर साइड एप्लिकेशन।

आसानी से दोनों का उपयोग कैसे करें

जेटब्रेन्स टूलबॉक्स अनुप्रयोग यह आसान स्थापित करने और कंधे से दो IDEs पक्ष का उपयोग करने में आता है। यह अपग्रेड भी करता है (और यदि वांछित है तो रोलिंग बैक) सुपर आसान भी। टूलबॉक्स ने एंड्रॉइड स्टूडियो का समर्थन नहीं किया जब यह पहली बार सालों पहले आया था। और इस तरह एक या दूसरे को चुनना "मुद्दा" था। इसके अतिरिक्त, सेटिंग्स रिपॉजिटरी प्लगइन (दोनों आईडीई में बंडल) का उपयोग करके आप आसानी से सिंक में दो इंटेलीज प्लेटफॉर्म आईडीई के बीच सेटिंग्स रख सकते हैं। ( IntelliJ IDEA डॉक्यूमेंटेशन में एक सेटिंग्स रिपॉजिटरी के माध्यम से शेयर सेटिंग्स देखें ।) इस प्रकार, टूलबॉक्स ऐप और सेटिंग्स रिपोजिटरी प्लगइन के बीच, यह सुविधाजनक है (IMHO) दोनों का उपयोग करने के लिए।


पिछला (आउटडेटेड) उत्तर फॉर्म जून 2015

सबसे पहले, एक अस्वीकरण ... मैंने केवल हल्के ढंग से एंड्रॉइड स्टूडियो का उपयोग किया है क्योंकि मैं अपना सारा काम इंटेलीजे आईडिया में करता हूं। लेकिन मैं 2003 से IntelliJ IDEA का एक शौकीन व्यक्ति रहा हूं।

जैसा कि एंड्रॉइड स्टूडियो को लगता है कि मुख्य रूप से Intellij का एक संशोधित संस्करण है, मेरे सवाल हैं कि क्या पूरी तरह से विशिष्ट विशेषताएं Android स्टूडियो में अपरिहार्य हैं? असंगत? "मानक"? बनाम इंटेलीज आइडिया समुदाय या अंतिम? एक उचित प्लगइन सेट के साथ दो विनिमेय हैं?

इसका त्वरित उत्तर यह है कि आप Android Studio में वह कुछ भी नहीं कर सकते हैं जो आप IntelliJ IDEA (समुदाय या अंतिम) में नहीं कर सकते हैं, जो Android Plugin स्थापित और सक्षम है। यहाँ IntelliJ IDEA फीचर मैट्रिक्स से एक स्क्रीनशॉट है जो उस बिंदु को बनाता है: यहां छवि विवरण दर्ज करें

असल में, Android स्टूडियो में IntelliJ IDEA की तुलना में Android के लिए अधिक "ब्रांडिंग" है। और चूंकि यह है सिर्फ एक एंड्रॉइड आईडीई है, इसलिए यह अधिक "केंद्रित" हो सकता है। जैसा कि मैंने उल्लेख किया है, एंड्रॉइड स्टूडियो में ऐसा कुछ भी नहीं है जो आप इंटेलीज आईडीईए में नहीं कर सकते। लेकिन इसके विपरीत सच नहीं है। बहुत सारे (गैर-एंड्रॉइड) चीजें हैं जो आप IntelliJ IDEA (समुदाय और अंतिम संस्करण दोनों) में कर सकते हैं जो आप Android Studio में नहीं कर सकते।

एंड्रॉइड स्टूडियो इंटेलीज आईडीईए प्लगइन्स का उपयोग कर सकता है या नहीं, इस सवाल के बारे में कि यह प्लगइन पर निर्भर करता है और कौन से घटक (इंटेलीज प्लगइन एपीआई के भीतर) इसका लाभ उठाते हैं। जब आप एक प्लगइन लिखते हैं, तो आपको घोषित करना होगा (आपके प्लगइन डिस्क्रिप्टर में) क्या एपीआई निर्भरता आप उपयोग करते हैं। कुछ उदाहरण हैं com.intellij.modules.lang, com.intellij.modules.java, AntSupport, औरGit4Idea । दर्जनों हैं, अगर सैकड़ों नहीं हैं, संभावनाओं के - अन्य प्लगइन्स सहित। तो अगर एक प्लगइन (या यह निर्भरता में से एक) प्लगइन एपीआई में कुछ का उपयोग करके समाप्त होता है जो एंड्रॉइड स्टूडियो में शामिल नहीं है, तो वह प्लगइन काम नहीं करेगा। उदाहरण के लिए, प्लगइन मैं एक एंड्रॉयड स्टूडियो के साथ संगत किया जा रहा है क्योंकि यह केवल पर निर्भर करता है के रूप में जेटब्रेन्स प्लगइन पेज पर लिखा था (कुछ नहीं मोबाइल विकास से कोई लेना देना नहीं है), सूचियों com.intellij.modules.langऔरcom.intellij.modules.java। इसलिए जब यह दोनों तरीकों से जा सकता है, तो यह अधिक संभावना है कि (IntelliJ IDEA के पास अधिक घटक स्थापित होने के कारण) एक प्लगइन केवल उस चीज पर निर्भर रहने के कारण IntelliJ IDEA में संगत हो सकता है।

क्या इंटेलीज हमेशा Android स्टूडियो होने के नाते रिलीज होने में पिछड़ जाएगा क्योंकि यह Google का "आधिकारिक" टूल है।

यह दोनों तरह से जा सकता है। JetBrains एंड्रॉइड स्टूडियो को हिट करने में समय लेने वाली चीजों को जोड़ सकता है; और Google उन चीजों को जोड़ सकता है जो IntelliJ IDEA को हिट करने में समय लेती हैं। यह सबसे अधिक संभावना है, हालांकि, बाद वाला अधिक प्रचलित होगा। हालाँकि, मुझे नहीं पता कि यह देरी कितनी देर के लिए हुई। यह JetBrians ब्लॉग पोस्ट उस संबंध में मदद कर सकता है: IntelliJ IDEA और Android Studio FAQ

मेरी व्यक्तिगत सिफारिशें होंगी: यदि आप जानते हैं कि आप केवल Android विकास करने जा रहे हैं, तो Android Studio के साथ जाएं। इसके अलावा नए एंड्रॉइड डेवलपर्स को संभवतः एंड्रॉइड स्टूडियो को एक बेहतर फिट मिलेगा क्योंकि अधिकांश दस्तावेज और ट्यूटोरियल इसे दिखाएंगे और इंटेलीजे आईडीईए में सामयिक मामूली अंतर (जैसे कि कुछ मेनू में स्थित है) हो सकता है। लेकिन अगर आप जावा, कोटलिन, ग्रोवी और / या स्काला का उपयोग कर या अन्य भाषाओं (पायथन, php, html, सीएसएस, जावास्क्रिप्ट, आदि) या किसी भी सर्वर साइड (या) के साथ JVM समर्पित परियोजनाओं में काम कर रहे होंगे। ") कोड - या तो आपके एंड्रॉइड ऐप्स के लिए या अन्य काम के लिए, फिर IntelliJ IDEA पर जाएं।

कुछ स्पष्टीकरण और एक अतिरिक्त स्क्रीनशॉट के लिए संपादित अगस्त 4, 2018।

नई जानकारी जोड़ने के लिए 25 नवंबर, 2019 को अपडेट किया गया


32
मुझे आश्चर्य है कि Google ने केवल समुदाय संस्करण के साथ काम करने के लिए intellij प्लगइन्स का उत्पादन नहीं किया, ताकि वे 100% संगत हों। मुझे लगता है कि यह ब्रांडिंग बात है :)
पेट्रिक

इंटेली ब्लॉग लिंक के लिए धन्यवाद। यह निश्चित रूप से मेरे द्वारा चलाए गए खोजों में से किसी पर पॉप अप नहीं हुआ।
पेटकर

आह हां, घोंसला खराब शोध वाला प्रश्न है (जो अच्छी उम्मीद के साथ एक और आत्मा प्रदान करेगा :) )
पेटकर

2
महान जवाब - आखिरकार मेरे दिमाग को साफ कर दिया कि मेरे संसाधनों (समय और धन) को एक एकल (स्वतंत्र) डेवलपर के रूप में निवेश करने के लिए किस उपकरण पर। इस तरह के उत्तर मैं बहुत सारे कारणों में से एक है जो मुझे बहुत पसंद है !!
सिलसूर

3
खैर, एंड्रॉइड स्टूडियो में C ++ सपोर्ट है, Intellij IDEA Ultimate नहीं है।
ज़फ्फी

0

Android विकास के लिए, आप Android Studio (पूर्वावलोकन 1.3 अब उपलब्ध है) का उपयोग करना सबसे अच्छा होगा।

चूंकि एंड्रॉइड स्टूडियो इंटेलीज में आधारित है, इसलिए आपके "सीखने की अवस्था" में कोई समस्या नहीं होनी चाहिए।

"सामान्य संसाधनों" का उपयोग करने के लिए, मुझे लगता है कि आप कोड का जिक्र कर रहे हैं ... और यह एक रिपॉजिटरी (git / github / ...) में होना चाहिए।


बेशक सभी संसाधन सामान्य और अनुप्रयोग परियोजना स्वयं स्रोत नियंत्रण में हैं, और हम git :) का उपयोग करते हैं :)
पीटर
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.