संपादित करें: अब सही नहीं है, के साथ एंड्रॉयड Gradle प्लगइन 3.x.
पुस्तकालय भी debug
और release
कलाकृतियों को प्रकाशित करते हैं। अगर परियोजना में स्वाद या कस्टम प्रकार हैं, तो वे भी बनाए जाते हैं। और मॉड्यूल में, यह स्वचालित रूप से वेरिएंट से मिलान करने का प्रयास करता है। यदि मिलान नहीं किया गया है, तो आपको मॉड्यूल में वेरिएंट से मिलान करने के लिए matchingFallback
प्रदान करने की आवश्यकता है। अधिक जानकारी यहां पाया जा सकता: https://developer.android.com/studio/build/gradle-plugin-3-0-0-migration.html#resolve_matching_errors
एंड्रॉयड पुस्तकालय मॉड्यूल केवल "रिलीज" का निर्माण प्रकार प्रकाशित करती है। उनके पास "डीबग" बिल्ड प्रकार नहीं है। यहां तक कि आपका एप्लिकेशन मॉड्यूल डीबग संस्करण भी बनाता है, यह लाइब्रेरी के रिलीज़ संस्करण का उपयोग करेगा।
आप सक्षम कर सकते हैं "डिबग" अपने मॉड्यूल के build.gradle
फ़ाइल में निम्न का उपयोग कर पुस्तकालय निर्भरता के प्रकार का निर्माण:
android {
publishNonDefault true
...
}
फिर जब आप अन्य मॉड्यूल में है कि निर्भरता का उपयोग कर रहे हैं, तो आप इस तरह उपयोग करना चाहिए:
dependencies {
releaseCompile project(path: ':moduleY', configuration: 'release')
debugCompile project(path: ':moduleY', configuration: 'debug')
}
मैं अपने आवेदन में एक ही चाल का उपयोग कर रहा हूं। मेरे पास एक साझा मॉड्यूल है और मैं मॉड्यूल के डीबग संस्करण का उपयोग करता हूं। यहां विवरण प्राप्त करें:
https://github.com/pomopomo/WearPomodoro/blob/develop/mobile/build.gradle#L90
मैं इसके बारे में भी उलझन में हूं। आपने अभी यह जवाब प्राप्त नहीं किया है (यह एक साल पहले देखा गया था)? यदि मैं अपने आप से कई मॉड्यूल बनाते हैं, जैसे: मॉड्यूलए: इकट्ठा करें डिबग, मॉड्यूलबी: इकट्ठा करें केवल एक ही रिलीज से संबंधित कार्य को डिबग करें प्रीरलीजबिल्ड (जो कि किसी कारण से इकट्ठा करने का हिस्सा है, तो यह सामान्य होना चाहिए), लेकिन जब मैं करता हूं: मॉड्यूलएक्स : इकट्ठा करें डेबग (जो मॉड्यूल ए/बी पर निर्भर करता है) कई रिलीज कार्यों को बुलाया जाता है, जैसे आपने अनुभव किया। कारण मुझे परवाह है क्योंकि ऐसा लगता है कि यह बिल्ड टाइप्स बनाता है {रिलीज {runProguard सच इस्तेमाल किया जा रहा है जिसे मैं डीबग बिल्ड के लिए नहीं चाहता हूं। – riper
हां, कभी जवाब नहीं मिला :) – Guy
क्या यह किसी भी बिल्ड फ़ाइल के लिए होता है (एंड्रॉइड स्टूडियो में एक नई रिक्त प्रोजेक्ट बनाने का कहना है) या यह केवल विशिष्ट बिल्ड फाइलों के साथ है? यदि उत्तरार्द्ध, कृपया अपना प्रश्न संपादित करें और विवरण जोड़ें। साथ ही, आप यह निर्धारित कैसे कर रहे हैं कि रिलीज कार्य चल रहे हैं? –