2016-08-24 11 views
13

में लाइब्रेरी की डिफ़ॉल्ट सूची में एंड्रॉइड लाइब्रेरी जोड़ें, तो सबसे पहले, किसी भी संदेह को दूर करने के लिए, मुझे पता है कि एक एंड्रॉइड प्रोजेक्ट में लाइब्रेरी कैसे जोड़नी है। मेरा सवाल यह है कि, मैं अपने एंड्रॉइड स्टूडियो में डिफ़ॉल्ट पुस्तकालयों की सूची में एक लाइब्रेरी जोड़ना चाहता हूं।स्टूडियो/एसडीके

मुझे एक उदाहरण के साथ समझाएं। मान लें कि मैं अपनी परियोजना में ग्लाइड लाइब्रेरी जोड़ना चाहता हूं। ऐसा करने के लिए, मुझे ग्लाइड गिथब पेज पर जाना होगा और फिर, वहां से मैं compile 'com.github.bumptech.glide:glide:3.7.0' टेक्स्ट कॉपी करता हूं और अपनी build.gradle फ़ाइल में पेस्ट करता हूं। फिर एंड्रॉइड स्टूडियो इंटरनेट पर लाइब्रेरी डाउनलोड करेगा। इसलिए हर बार जब मैं अपनी किसी भी परियोजना में ग्लाइड लाइब्रेरी का उपयोग करना चाहता हूं, तो मुझे यह करना होगा। क्या मैं चाहता हूँ, कि, मैं पुस्तकालयों की मेरी डिफ़ॉल्ट सूची है कि मुझे

enter image description here

तो यहाँ के लिए उपलब्ध हैं में ग्लाइड की तरह एक विशिष्ट पुस्तकालय शामिल करना चाहते है, वह जगह है जहाँ मैं अपने पुस्तकालय परियोजना शामिल करना चाहते हैं, तो कि मैं अपनी किसी भी परियोजना में इसका उपयोग कर सकता हूं। पढ़ने के लिए अग्रिम धन्यवाद।

+1

एंड्रॉयड स्टूडियो के लाइव टेम्पलेट्स पर एक नज़र डालें सुविधा https://www.youtube.com/watch?v=4rI4tTd7-J8 – Luksprog

+1

इस पोस्ट की जाँच करें http://stackoverflow.com/a/39116613/1770868 –

+0

@ Luksprog, पढ़ने के लिए सबसे पहले धन्यवाद, यह कोड का पुन: उपयोग करने का एक वैकल्पिक तरीका है। –

उत्तर

4

लाइब्रेरी को स्वचालित रूप से प्रत्येक नई परियोजना/मॉड्यूल में जोड़ने का एक तरीका है। एंड्रॉइड स्टूडियो निर्देशिका में टेम्पलेट्स वाला एक फ़ोल्डर है। देखो के लिए:

build.gradle.tfl 

अपनी आवश्यकताओं के अनुसार यह संशोधित करें:

..\Android Studio\plugins\android\lib\templates\gradle-projects\NewAndroidModule\root 

इस निर्देशिका में एक फ़ाइल है।
उदाहरण:

dependencies { 
    <#if dependencyList?? > 
    <#list dependencyList as dependency> 
    compile '${dependency}' 
    </#list> 
    </#if> 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
<#if WearprojectName?has_content && NumberOfEnabledFormFactors?has_content && NumberOfEnabledFormFactors gt 1 && Wearincluded> 
    wearApp project(':${WearprojectName}') 
    compile 'com.google.android.gms:play-services:+' 
</#if> 
<#if unitTestsSupported> 
    testCompile 'junit:junit:${junitVersion}' 
</#if> 
    compile 'com.github.bumptech.glide:glide:3.7.0' 
} 

आप देख सकते हैं, ग्लाइड पुस्तकालय अंत में जोड़ा गया है।

जब यह फ़ाइल संशोधित होती है, तो प्रत्येक नई Android Phone & Table module में इस लाइब्रेरी को शामिल किया जाएगा।

बेशक ऐसा कुछ भी नहीं है जो आपको अपना मॉड्यूल या प्रोजेक्ट टेम्पलेट जोड़ने से रोकता है।

+0

नहीं जोड़ सकता, लेकिन ऐसा करने से मेरी सभी परियोजनाओं में ग्लाइड लाइब्रेरी या कोई लाइब्रेरी शामिल हो जाती है। –

+0

यह मेरे उत्तर की पहली पंक्ति थी। इस तरह हर नई परियोजना में 'गिल्ड' जोड़ा जाता है। –

3

मुझे डर है कि यह इतना आसान नहीं है।

मैंने नवीनतम एंड्रॉइड स्टूडियो स्रोत कोड (शाखा master) और इस संवाद के लिए कोड (MavenDependencyLookupDialog.java) देखा। जैसा कि आप this line देखकर देख सकते हैं निर्भरता ImmutableList के अंदर आयोजित की जाती है और हार्डकोडेड हैं। केवल समर्थन-निर्भर निर्भरताएं नहीं हैं।

समर्थन निर्भरता अलग-अलग जगह पर आयोजित की जाती है (RepositoryUrlManager.java)। लेकिन वे हार्डकोडेड भी हैं। मेरी previous answer

  • में वर्णित के रूप में एक Live template स्वचालित रूप से टाइप करने के लिए glide बनाएँ और Intellij आप ग्लाइड निर्भरता
  • बदलें एंड्रॉयड स्टूडियो सम्मिलित करने के लिए एक संकेत देना होगा मॉड्यूल टेम्पलेट

    • बदलें:

      आप तीन विकल्प स्रोत कोड, एक पुल अनुरोध करें और इसके परिवर्तनों को ध्यान में रखने के लिए जिम्मेदार लोगों को मनाने के लिए।

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

    • कोई संबंधित समस्या नहीं^_^