2015-10-19 11 views
12

से गुजरने के लिए पासिंग-पी पैरामीटर एंड्रॉइड स्टूडियो के अंदर ऐसी चीजें करने के लिए कोई कार्यक्षमता है। मूल रूप से मेरी ग्रेडल स्क्रिप्ट संस्करण नामक पैरामीटर पढ़ती है जिसके आधार पर यह एक निश्चित पुस्तकालय के निर्भरता संस्करण सेट करता है। तो जब मैं gradlew -Pversion = '1.2.3' करता हूं तो मुझे यह स्ट्रिंग धीरे-धीरे अंदर मिलती है। लेकिन यह केवल तभी काम करता है जब मैं कंसोल से ग्रेडल का आह्वान करता हूं।एंड्रॉइड स्टूडियो

एंड्रॉइड स्टूडियो (छोटे प्ले त्रिकोण को दबाकर) के लिए कॉन्फ़िगरेशन का उपयोग शुरू करते समय ग्रेडल करने के लिए पैरामीटर पास करने का कोई तरीका है?

नोट: मुझे डिफ़ॉल्ट कॉन्फ़िगरेशन के तहत ग्रैडल वीएम विकल्प और स्क्रिप्ट प्राइमर्स मिलते थे लेकिन जोड़--वर्जन = '1.2.3' का कोई असर नहीं पड़ता है।

उत्तर

7

भागो> विन्यास संपादित करें ..

enter image description here

अपने पैरामीटर द्वारा "abcdef" बदलें स्क्रिप्ट मानकों में।

+3

दुर्भाग्य से यह मेरे मामले में काम नहीं कर रहा है। मैं Android अनुप्रयोग कॉन्फ़िगरेशन (आपके स्क्रीनशॉट में बाईं ओर पहला विकल्प) का उपयोग करते समय पैरामीटर को क्रमबद्ध करने के लिए पास करना चाहता हूं, मैं सीधे ग्रैडल कार्य को चलाने के लिए नहीं चाहता हूं। – PSIXO

4

उदाहरण के लिए प्रोजेक्ट बनाने के दौरान सर्वर बेस एंडपॉइंट पास करने का प्रयास करें।

debug{ 
    buildConfigFiled("java.lang.String","BASE_URL","$serverUrl") 
} 

अब हम पारित कर सकते हैं डिबग एक यूआरएल का निर्माण और इसका इस्तेमाल करते हैं: सबसे पहले हम एक तरीका है जिसके यूआरएल हो जाता है और सेट यह

def serverUrl = "https://mydefaulturl.com" 
task(runProgram){ 
    if(project.hasProperty("url")){ 
     serverUrl = url; 
    } 
} 

अपने buildTypes में इस मूल्य के साथ अपने आधार यूआरएल बनाने को परिभाषित करने की जरूरत है।

आप नीचे दिए गए आदेश के साथ टर्मिनल से अपनी परियोजना का निर्माण कर सकते हैं:

./gradlew installDebug task runProgram '-Purl="https://yournewurl.com"' 
+0

यहां कॉन्फ़िगरेशन बनाने के लिए फ़ील्ड जोड़ने का उपयोग क्या है? – PSIXO

+0

यदि आप परीक्षण और उत्पादन के लिए दो या दो से अधिक विभिन्न यूआरएल का उपयोग करते हैं तो आप बिल्ड वैरिएंट्स या बिल्ड प्रकारों के साथ अपना बेस यूआरएल उत्पन्न कर सकते हैं। उत्पादन से पहले यह बेस यूआरएल जैसे कुछ महत्वपूर्ण चरों पर टिप्पणी करने या टिप्पणी करने का एक अच्छा मामला नहीं है। – savepopulation

+5

सवाल यह पूछ रहा है कि एंड्रॉइड स्टूडियो के भीतर से ऐसा करने का कोई तरीका है या नहीं। जवाब मदद नहीं करता है। – KMP

5

आदेश में के तहत AndroidStudios संकलित पसंद

AndroidStudio> प्राथमिकताएं एंड्रॉयड स्टूडियो के run विकल्प के लिए पैरामीटर प्रदान उन्हें आप सेटअप करना चाहिए करने के लिए। ..

संकलक के तहत: ComandLineOptions enter image description here

+0

एएस 3.0.1 पर, यह मेरे लिए काम करता है, और धीरे-धीरे गुणों को पार करते समय तत्काल रन क्षमता की अनुमति देता है। यह दुर्भाग्यपूर्ण है कि इसे वैश्विक रूप से सेट किया जाना चाहिए, और प्रति रन कॉन्फ़िगरेशन सेट नहीं किया जा सकता है। साथ ही, जैसा कि @ केएमपी ने जवाब दिया है, सीधे संपत्ति के काम के साथ धीरे-धीरे कार्य का उपयोग करके, लेकिन यह मेरे लिए तत्काल रन तोड़ता है। –

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