2017-08-04 20 views
10

एंड्रॉइड प्लगइन के लिए एंड्रॉइड प्लगइन का नवीनतम संस्करण (3.0.0) Variant Outputs में हेरफेर करने के लिए अपना एपीआई तोड़ दिया है। इस एपीआई का निर्माण बिल्ड (जैसे AndroidManifest.xml) के दौरान बनाने वाली फ़ाइलों में हेरफेर करने के लिए किया गया था, और कॉन्फ़िगरेशन समय को बेहतर बनाने के लिए हटा दिया गया है।एंड्रॉइड ग्रैडल प्लगइन 3.0.0+ का उपयोग करके वेरिएंट आउटपुट का उपयोग कैसे किया जा सकता है?

वेरिएंट आउटपुट में हेरफेर करने के लिए कौन सी नई एपीआई उपलब्ध हैं, और वे 2.X एपीआई में भिन्न कैसे हैं?

+0

आप किस विशेष रूप से रुचि रखते हैं? – azizbekian

+0

मुझे विशेष रूप से आउटपुटफाइल में हेरफेर करने में दिलचस्पी है, क्योंकि अब यह गारंटी नहीं दी जाती है कि ये कॉन्फ़िगरेशन चरण के दौरान भिन्न कार्यों के लिए उपलब्ध होंगे। यदि इस एपीआई में कोई अन्य महत्वपूर्ण बदलाव हुए हैं, तो मुझे लगता है कि यह एक कैननिकल उत्तर – fractalwrench

+0

का हकदार है, मैं एक कैननिकल उत्तर के साथ नहीं आ सकता, क्या आप एक कामकाजी उदाहरण से खुश होंगे? मैं एक कस्टम नाम के साथ एक आउटपुट एपीके बनाने के लिए अपने ग्रेड 4 एंड्रॉइड प्रोजेक्ट को सेट करने वाला था, क्या आपको इसकी आवश्यकता है? – Fabio

उत्तर

2

आउटपुटफाइल में परिवर्तन अब Android Developer site पर दस्तावेज किए गए हैं।

अनिवार्य रूप से, आउटपुट तक पहुंचने के बजाय सीधे gradle API से फ़ाइल, अनुशंसा फ़ाइल के साथ फ़ाइल युक्त निर्देशिका तक पहुंचने के लिए है। नीचे स्निपेट इसे एक मैनिफेस्ट फ़ाइल के साथ प्रदर्शित करता है, लेकिन अन्य आउटपुटफाइल पर भी लागू किया जा सकता है।

android.applicationVariants.all { variant -> 
    variant.outputs.all { output -> 
     output.processManifest.doLast { 

      String manifestPath = "$manifestOutputDirectory/AndroidManifest.xml" 
      def manifestContent = file(manifestPath).getText() 

      // Manipulate the file as needed 
     } 
    } 
} 
संबंधित मुद्दे