मेरे पास कई अनुप्रयोग परियोजनाएं हैं जो एक सामान्य पुस्तकालय परियोजना का उपयोग करती हैं। मैंने हाल ही में प्रत्येक एप्लिकेशन प्रोजेक्ट के AndroidManifest.xml से लाइब्रेरी के मेनिफेस्ट में कुछ सामान्य गतिविधि घोषणाओं को स्थानांतरित करने का प्रयास किया है, और manifestmerger.enabled=true
project.properties
में सक्षम मैनिफेस्ट विलय कर दिया है।प्रोग्रार्ड obfuscates एक विलय पुस्तकालय में गतिविधि नाम प्रकट
सबकुछ डीबग बिल्ड में ठीक काम करता है, लेकिन रिलीज बिल्ड (प्रोगार्ड द्वारा obfuscated) ActivityNotFoundException
के साथ विफल रहता है। ऐसा इसलिए है क्योंकि प्रोगार्ड लाइब्रेरी मेनिफेस्ट में घोषित गतिविधियों के नामों को खराब कर रहा है, लेकिन एप्लिकेशन मेनिफेस्ट में नहीं।
मैंने एप्लिकेशन प्रोजेक्ट के लिए विलय bin/AndroidManifest.xml
फ़ाइल की जांच की है, और यह सही ढंग से गतिविधि नाम सूचीबद्ध है।
क्या कोई व्यक्ति कामकाज का सुझाव दे सकता है?
@ एरिक, मुझे लगता है कि यह बिल्ड सिस्टम (https://code.google.com/p/android/issues/detail?id=36077) में एक बग है। क्या आपके पास कोई कामकाज या सुझाव है? – user802421
@ user802421 स्पष्ट रूप से उपर्युक्त लाइनों को जोड़ना इसके आसपास काम करना चाहिए। –
@ एरिक, स्पष्ट रूप से अभी भी काम नहीं किया है। एपीके परियोजना के मैनिफेस्ट में केवल कक्षा परिभाषा रखा गया था। अभी मुझे विलय बंद करने और lib प्रोजेक्ट से सबकुछ कॉपी करने की आवश्यकता है। :( – user802421