2011-09-29 16 views
12

के साथ परिवर्तनीय पैकेज नाम मैं अपना आवेदन बनाने के लिए मेवेन एंड्रॉइड प्लगइन का उपयोग कर रहा हूं।मेवेन एंड्रॉइड प्लगइन

असल में, मैं एक ही ऐप के 3 "ब्रांडेड" संस्करणों का निर्माण कर रहा हूं (ऐप आइकन, रंग इत्यादि ... परिवर्तन, लेकिन विशेषताएं नहीं)। मुझे पता है कि मुझे प्रत्येक एप्लिकेशन के लिए एक अलग पैकेज नाम का उपयोग करने की आवश्यकता है, क्योंकि उन्हें अलग माना जा सकता है।

अब तक मैं strings.xml में Maven फ़िल्टर का उपयोग कर, "डायनामिक" मान में कामयाब रहे:

<string name="app_name">${app_name}</string> 
<string name="widget_name">${widget_name}</string> 
<string name="app_icon">${app_icon}</string> 

समस्या यह है कि इस पैकेज के नाम के लिए काम नहीं करता है! अगर मैं कार्य करें:

<manifest package="${foo.bar}"> 

एडीटी (अच्छी तरह से, सत्यापनकर्ता वास्तव में) की शिकायत करते हुए कहा विशेषता पैकेज अमान्य वर्ण '$'

मैं इस के लिए किसी भी तरीके को नहीं मिल सकता है ... वहाँ है है मैवेन संसाधन फ़िल्टरिंग या ऐसा कुछ लॉन्च करने के लिए एडीटी को बताने का एक तरीका?

उत्तर

17

आगे के शोध के बाद, यह काफी आसान प्रतीत होता है!

आपको मेवेन एंड्रॉइड प्लगइन की कॉन्फ़िगरेशन में केवल <renameManifestPackage> जोड़ने की आवश्यकता है। संस्करण> 2.9.0:

<plugin> 
    <groupId>com.jayway.maven.plugins.android.generation2</groupId> 
    <artifactId>maven-android-plugin</artifactId> 
    <version>2.9.0-beta-5</version> 
    <configuration> 
     ... 
     <renameManifestPackage>${manifest_package}</renameManifestPackage> 
    </configuration> 
</plugin> 
+1

क्या यह आपके लिए काम करता है? मुझे ऐप मिला है जिसे एमुलेटर –

+0

ठीक से इंस्टॉल नहीं किया जा सकता है। यह काम करता है लेकिन जब मुझे दोनों ऐप्स –

+0

मैन इंस्टॉल करने का प्रयास किया गया तो मुझे समस्या मिली, यह डेढ़ साल पहले उत्तर दिया गया था, यह काम करता था, अब नवीनतम एसडीके के साथ नहीं जानता, क्षमा करें – mexique1

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