मैंने एंड्रॉइड मैनिफेस्ट से जानकारी का उपयोग करके इसे स्वचालित तरीके से किया है।
मेरे दृष्टिकोण मास्टर फ़ाइल आपके स्थानीय फ़ाइल <SDK>/tools/ant/build.xml
पर स्थित है में आयात किया जाता SDK के नवीनतम संस्करण में मास्टर build.xml
फ़ाइल की एक कस्टम प्रतिलिपि आयात करने के लिए, स्थानीय परियोजना चींटी build.xml
फ़ाइल को संशोधित करने के लिए किया गया था (android_rules था पिछले संस्करणों में .xml) import
लाइन को अपने प्रोजेक्ट में डिफ़ॉल्ट build.xml
फ़ाइल में नोट करें।
एंड्रॉइड टूल्स द्वारा बनाए गए स्थानीय build.xml
में टिप्पणियां में अनुकूलन कैसे करें, इस बारे में विवरण शामिल हैं, जैसे कि टूल्स के भविष्य के अपडेट आपके परिवर्तनों को तोड़ नहीं देंगे।
कस्टम नियम फ़ाइल जोड़ें:
<xmlproperty file="AndroidManifest.xml" prefix="mymanifest" collapseAttributes="true"/>
यह एक कस्टम उपसर्ग के साथ, चींटी गुण का एक सेट के रूप में प्रकट में पढ़ता है कोई नाम नहीं टक्कर सुनिश्चित करने के लिए।
फिर आप $ {mymanifest.manifest.android:versionName} धब्बे कि apk नाम परिभाषित किया गया है में से किसी के लिए, बस कस्टम नियम फ़ाइल में .apk
के लिए खोज जोड़ सकते हैं।
मैंने बिल्ड प्रक्रिया से संस्करण फ़ाइलों को स्वचालित करने के लिए इस प्रक्रिया का उपयोग किया है।
कुछ अतिरिक्त बदलावों के साथ आपके रिलीज ऐप को स्वचालित रूप से हस्ताक्षर करना भी संभव है, गुणों में पासवर्ड सेट करना और हस्ताक्षर कार्य में उन लोगों का उपयोग करना। वास्तविक पासवर्ड जहां एक अलग गुण फ़ाइल में संग्रहीत किया गया है जो केवल बिल्ड सर्वर पर रहता है। एक मामूली सुरक्षा जोखिम होने पर, कुछ मामलों में यह अंत निर्माण स्वचालन के पूर्ण अंत की आवश्यकता से वजन कम हो जाता है।
धन्यवाद। आपका सुझाव अच्छी तरह से काम करता है। मेरी build.xml में टिप्पणी निम्नलिखित लाइनों के साथ एक सा गाड़ी है: नियम फ़ाइल /platforms//templates/android_rules.xml इसके बजाय 'android_rules.xml' सहित से आयात किया जाता, आपको ' /tools/ant/ant_rules_r3.xml' शामिल करना चाहिए। अन्यथा निर्माण विफल हो जाएगा। –
क्या एक्लिप्स एपीके निर्यात के साथ इसे स्वचालित करने का कोई तरीका है? – Sney
ऐसा नहीं है कि मुझे पता है। एएनटी का उद्देश्य वह जगह है जहां आप स्वचालन का निर्माण करते हैं। आप इसे एडीटी टीम के फीचर अनुरोध के रूप में दर्ज कर सकते हैं। – cistearns