यहाँ है चरण-दर-चरण जो मैंने अपनी दोनों चाबियों को gradle.build फ़ाइल से बाहर ले जाने के लिए लिया है, जो किसी भी बिल्ड या रिपोजिटरी में शामिल नहीं होगा।
1)एक gradle.properties बनाएं (यदि आपके पास पहले से कोई नहीं है)।
इस फ़ाइल के लिए स्थान अपने ओएस पर निर्भर करता है:
/home/<username>/.gradle/ (Linux)
/Users/<username>/.gradle/ (Mac)
C:\Users\<username>\.gradle (Windows)
2) yourprojectname.properties
फाइल करने के लिए एक प्रवेश इशारा जोड़ें। (Windows के लिए उदाहरण)
yourprojectname.properties=c:\\Users\\<username>\\signing\\yourprojectname.properties
3) स्थान में yourprojectname.properties
फ़ाइल बनाएँ आप निम्नलिखित जानकारी के साथ चरण 2 में बताया:
keystore=C:\\path\\to\\keystore\\yourapps.keystore
keystore.password=your_secret_password
4) बात करने के लिए अपने gradle.build
फ़ाइल को संशोधित करें चर का उपयोग करने के लिए yourprojectname.properties
फ़ाइल पर।
if(project.hasProperty("yourprojectname.properties")
&& new File(project.property("yourprojectname.properties")).exists()) {
Properties props = new Properties()
props.load(new FileInputStream(file(project.property("yourprojectname.properties"))))
android {
signingConfigs {
release {
keyAlias 'release'
keyPassword props['keystore.password']
storeFile file(props['keystore'])
storePassword props['keystore.password']
}
debug {
keyAlias 'debug'
keyPassword props['keystore.password']
storeFile file(props['keystore'])
storePassword props['keystore.password']
}
}
compileSdkVersion 19
buildToolsVersion "20.0.0"
defaultConfig {
applicationId "your.project.app"
minSdkVersion 16
targetSdkVersion 17
}
buildTypes {
release {
}
}
}
}
dependencies {
...
}
5) का आनंद लें! अब आपकी सभी चाबियाँ निर्देशिका की जड़ से बाहर होंगी और फिर भी आपको प्रत्येक बिल्ड के लिए स्वचालन की खुशी है।
आप "सहारा" चर के बारे में अपनी gradle.build फ़ाइल में कोई त्रुटि मिलती है यह है क्योंकि आप "एंड्रॉयड {}" बहुत पहले if
स्थिति है, जिसमें props
चर सौंप दिया जाता है के अंदर ब्लॉक को क्रियान्वित नहीं कर रहे हैं यदि ऐसा है तो बस ले जाने के संपूर्ण एंड्रॉइड {...} अनुभाग उस स्थिति में जिसमें प्रोपर्स वैरिएबल असाइन किया गया है, फिर पुन: प्रयास करें।
मैंने here और here मिली जानकारी से इन चरणों को एक साथ पाई।
स्रोत
2015-03-01 15:12:38
बहुत धन्यवाद, मैं कोशिश करूँगा। मुझे अलग-अलग चाबियों का उपयोग क्यों करना चाहिए? परिणाम और मुझे प्राप्त समय की मात्रा बहुत बड़ी है ... –
क्या डीबग कीस्टोर के पासवर्ड के बारे में कोई बाधा है? –
क्या होगा अगर मैं डीबग में प्रत्येक स्वाद के लिए एक विशिष्ट कीस्टोर चाहता हूं? –