मैं एक Android आवेदन है कि मैं हाल ही में इस तरह के निर्माण उपकरणों के एक नए संस्करण का उपयोग कर के रूप में अन्य बातों के बीच Gradle निर्माण सिस्टम में अपग्रेड मिल गया है, आदिjava.lang.NoClassDefFoundError Android 4.4 या
पर मेरे targetSdkVersion 1 9 है, इसलिए मुझे एंड्रॉइड 4.4 और उच्चतर पर जाने के लिए अच्छा होना चाहिए। जब मैं 5.0+ डिवाइस का उपयोग कर चलाता हूं, तो सब ठीक है; हालांकि एंड्रॉइड 4.4 हमेशा किसी प्रकार की java.lang.NoClassDefFoundError
त्रुटि के साथ दुर्घटनाग्रस्त हो जाता है।
एक परीक्षण के रूप में, मैंने मूल वर्ग को हटा दिया है, जिसने शिकायत की है कि यह केवल एक अलग वर्ग पर इंगित करते समय इसे दुर्घटनाग्रस्त होने के बारे में शिकायत करता है।
पहली कक्षा जिस पर यह दुर्घटनाग्रस्त हो गई थी वह तीसरी पार्टी लाइब्रेरी में एक आंतरिक निजी वर्ग थी। उस पुस्तकालय को हटाने के बाद, यह ऐप में एक आंतरिक निजी वर्ग की ओर इशारा करता है।
सारांश में:
- ऐप Android पर ठीक चलाता है 5.0+। यह 5.0 से कम किसी भी चीज़ पर
java.lang.NoClassDefFoundError
के साथ दुर्घटनाग्रस्त हो जाता है। - अब तक परीक्षणों में, NoClassDef हमेशा एक आंतरिक वर्ग का संदर्भ लेता है - यह केवल दो परीक्षणों पर आधारित है, इसलिए यह कुछ भी ठोस नहीं हो सकता है।
यहाँ मेरी android.manifest फ़ाइल है: https://gist.github.com/rscott78/19dd88ccde66172d9332
: अपने AndroidManifest में
, आपके आवेदन टैग के लिए एक
name
विशेषता जोड़ें एक ही समय में इस त्रुटि को ठीक करते समय multidexenabled जोड़ने की जरूरत है, यह समाधान पूरी तरह से आपके दिन को बचाएगा! – user724861लेकिन इस कोड ने किस तरह से अतिरिक्त किया ?? सिर्फ जानना चाहता था। और हाँ जो भी फिक्स के साथ मल्टीडेक्स सक्षम करना चाहते हैं, तो यह समाधान है। +1 –
हमने वास्तव में इस तरह से हमारे ऐप को लागू किया लेकिन हमें अभी भी दुर्घटना मिली है। क्यूं कर? –