2012-08-15 15 views
8

मैं ProGuard के साथ एक एंड्रॉइड ऐप को खराब करने की कोशिश कर रहा हूँ। कहानियो के बाद java.util.LinkedHashMap:प्रोजेवार्ड obfuscation और जेनेरिक तरीकों

यहाँ मैं एक वर्ग

public class Book implements DBbinded 

और एक सामान्य विधि

private void storeDBObjects(ArrayList<? extends DBbinded> dbObjects) 

इस विधि के कॉल एक java.lang.ClassCastException फेंकता है। इसे ठीक करने के लिए मुझे proguard.properties में क्या लिखना चाहिए?

उत्तर

0

यह प्रोगार्ड में एक बग हो सकता है। आपको यह जांचना चाहिए कि the latest version इंस्टॉल करने में सहायता करता है (इस समय ProGuard 4.9 beta1: एंड्रॉइड-एसडीके/टूल्स/प्रोगोगर्ड/lib में proguard4.9beta1/lib/proguard.jar की प्रतिलिपि बनाएँ)। अन्यथा, आप ProGuard's bug tracker पर समस्या की रिपोर्ट कर सकते हैं।

7

मैं अभी इस समस्या में आया हूं और -keepattributes ProGuard तर्क के तहत 'हस्ताक्षर' विशेषता निर्दिष्ट करके इसे हल किया है।

-keepattributes SourceFile,LineNumberTable,Signature,*Annotation* 

मुझे विश्वास नहीं है कि यह एक प्रोगार्ड बग है। उम्मीद है की वो मदद करदे।

+2

हाँ, हस्ताक्षर तर्क में है! – OceanLife

+0

उपर्युक्त पंक्ति के अलावा, मुझे अपवाद – schnatterer

+0

स्वीट से छुटकारा पाने के लिए 'keepclassmembers क्लास <पूर्ण योग्य क्लास नाम>' जोड़ना पड़ा। एड के लिए धन्यवाद। – OceanLife

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