मैं "abi" द्वारा "विभाजन" का उपयोग करना चाहता हूं, लेकिन केवल रिलीज निर्माण के लिए। क्या यह संभव है? मैं "चर" द्वारा एक्सटी वैरिएबल और वैरिएबल का उपयोग करने का प्रयास करता हूं जो डिफ़ॉल्ट रूप से गलत पर सेट होता है। यह चर रिलीजविथलॉग (और रिलीज) के लिए buildTypes में सत्य पर सेट है।एंड्रॉइड ग्रैडल - केवल रिलीज के लिए स्प्लिट का उपयोग संभव है?
लेकिन मुझे नहीं पता कि कैसे ग्रैडल काम करता है, क्योंकि जब मैं "डीबग", "रिलीज विथलॉग" और "रिलीज" और रन बिल्ड करने के लिए testeln() को जोड़ता हूं, तो सभी संदेश आउटपुट में होते हैं, इसलिए यह मुझे पुष्टि करता है वह वैरिएबल "splitsEnabled" सत्य पर सेट है हालांकि मैं डीबग के लिए निर्माण करता हूं - और मुझे डीबग के लिए "झूठी" मान की उम्मीद है (और इसलिए डीबग के लिए विभाजन का उपयोग नहीं करना)। एंड्रॉयड स्टूडियो में एक Gradle कार्य के लिए क्षेत्र:
apply plugin: 'com.android.application'
android {
compileSdkVersion 19
buildToolsVersion '20.0.0'
ext {
splitsEnabled = false
}
defaultConfig {
...
}
buildTypes {
debug {
...
}
releaseWithLog {
...
splitsEnabled = true
}
release.initWith(releaseWithLog)
release {
...
}
}
...
splits {
abi {
println(splitsEnabled)
enable splitsEnabled
reset()
include 'x86', 'armeabi-v7a', 'armeabi'
exclude 'x86_64', 'mips64', 'arm64-v8a', 'mips'
universalApk true
}
}
...
के बाद से 'splits' की एक सहकर्मी है' buildTypes', मुझे लगता है कि विभाजन प्रति-प्रकार के आधार पर नहीं किया जा सकता, लेकिन मैं गलत साबित किया जा करने में प्रसन्नता होगी। लेकिन कृपया ध्यान रखें कि 'बिल्ड सक्षम करें सक्षम' एक प्रकार का चयन करने से पहले अच्छी तरह से चलाया जाता है। 'Build.gradle' में बयान ज्यादातर ऑब्जेक्ट मॉडल बना रहे हैं। यह एक व्याख्या की गई स्क्रिप्ट नहीं है। ऑब्जेक्ट मॉडल के निर्माण के बाद ही ग्रैडल यह पता लगाना शुरू कर देता है कि कार्य (ओं) को चलाने के लिए किस प्रकार के निर्माण की आवश्यकता है। – CommonsWare
मुझे भी रूचि है - बिल्ड समय बचाने के लिए और डीबग –
में सिर्फ एक विभाजन का निर्माण करना अच्छा लगेगा, मैं इस मुद्दे को हल करने के लिए एबीआई बनाने के पुराने तरीके पर वापस लौट आया! https://twitter.com/silentnuke/status/619501266646003713 –