2013-01-15 9 views
18

संपादित बंद करने के साथ jsoup का उपयोग कर: मेरी ProGuard संस्करण है 4.7ProGuard बलपूर्वक बंद करना

आज मैंने कोशिश की मेरी Android एप्लिकेशन में jsoup (version 1.7.1) शामिल हैं, लेकिन यह मुझे मुसीबतों का एक बहुत हो रही है। जब मैं के साथ हस्ताक्षर किए apk निर्यात proguard हर चालू अपने आवेदन बल पास मुद्दों, तो मैं अक्षम proguard का सामना करना पड़ रहा था और apk निर्यात किया है और यह पूरी तरह से भाग गया। क्रिप्या मेरि सहायता करे। मैं त्रुटि को कैसे हल कर सकता हूं? स्टैकट्रेस रूप में नीचे है:

java.lang.RuntimeException: An error occured while executing doInBackground() 
at android.os.AsyncTask$3.done(AsyncTask.java:278) 
at java.util.concurrent.FutureTask$Sync.innerSetException(FutureTask.java:273) 
at java.util.concurrent.FutureTask.setException(FutureTask.java:124) 
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:307) 
at java.util.concurrent.FutureTask.run(FutureTask.java:137) 
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:208) 
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:107 
6) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:56 
9) 
at java.lang.Thread.run(Thread.java:856) 
Caused by: java.lang.ExceptionInInitializerError 
at org.jsoup.nodes.Document$OutputSettings.<init>(Unknown Source) 
at org.jsoup.nodes.Document.<init>(Unknown Source) 
at org.jsoup.parser.TreeBuilder.void initialiseParse(java.lang.String,java.lang. 
String,org.jsoup.parser.ParseErrorList)(Unknown Source) 
at org.jsoup.parser.TreeBuilder.org.jsoup.nodes.Document parse(java.lang.String, 
java.lang.String,org.jsoup.parser.ParseErrorList)(Unknown Source) 
          boolean process(org.jsoup.parser.Token) 
at org.jsoup.parser.HtmlTreeBuilder.org.jsoup.nodes.Document parse(java.lang.Str 
ing,java.lang.String,org.jsoup.parser.ParseErrorList)(Unknown Source) 
           boolean process(org.jsoup.parser.Token) 
           boolean process(org.jsoup.parser.Token,org.j 
soup.parser.HtmlTreeBuilderState) 
           void transition(org.jsoup.parser.HtmlTreeBui 
lderState) 
           org.jsoup.parser.HtmlTreeBuilderState state(
) 
           void framesetOk(boolean) 
           void maybeSetBaseUri(org.jsoup.nodes.Element 
) 
           org.jsoup.nodes.Element insert(org.jsoup.par 
ser.Token$StartTag) 
           org.jsoup.nodes.Element insert(java.lang.Str 
ing) 
           void insert(org.jsoup.parser.Token$Comment) 
           void insert(org.jsoup.parser.Token$Character 
) 
           boolean isElementInQueue(org.jsoup.helper.De 
scendableLinkedList,org.jsoup.nodes.Element) 
           void popStackToClose(java.lang.String[]) 
           void insertOnStackAfter(org.jsoup.nodes.Elem 
ent,org.jsoup.nodes.Element) 
           void replaceInQueue(java.util.LinkedList,org 
.jsoup.nodes.Element,org.jsoup.nodes.Element) 
           boolean inSpecificScope(java.lang.String,jav 
a.lang.String[],java.lang.String[]) 
           boolean inSpecificScope(java.lang.String[],j 
ava.lang.String[],java.lang.String[]) 
           boolean inScope(java.lang.String,java.lang.S 
tring[]) 
           void insertInFosterParent(org.jsoup.nodes.No 
de) 
at org.jsoup.parser.Parser.org.jsoup.nodes.Document parse(java.lang.String,java. 
lang.String)(Unknown Source) 
at org.jsoup.Jsoup.org.jsoup.nodes.Document parse(java.lang.String)(Unknown Sour 
ce) 
at com.my.package.name.BalCheck.void doLogin(java.lang.String,java.lang 
.String)(Unknown Source) 
            void checkBal() 
            void echo(java.lang.String) 
at com.my.package.name.BalCheck.void doCheckBalance(java.lang.String,ja 
va.lang.String)(Unknown Source) 
at com.my.package.name.SmsPage$CheckUltooBalance.java.lang.Void doInBac 
kground(java.lang.Void[])(Unknown Source) 
                 void onPostExecute(jav 
a.lang.Void) 
at com.my.package.name.SmsPage$CheckUltooBalance.java.lang.Object doInB 
ackground(java.lang.Object[])(Unknown Source) 
at android.os.AsyncTask$2.call(AsyncTask.java:264) 
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305) 
... 5 more 
Caused by: java.lang.ExceptionInInitializerError 
at org.jsoup.nodes.Entities$EscapeMode.<clinit>(Unknown Source) 
... 18 more 
Caused by: java.lang.NullPointerException 
at java.util.Properties.load(Properties.java:246) 
at org.jsoup.nodes.Entities.java.util.Map loadEntities(java.lang.String)(Unknown 
Source) 
at org.jsoup.nodes.Entities.<clinit>(Unknown Source) 
... 19 more 

उत्तर

27

आप इस सवाल का जवाब है, जो लगता है jsoup with proguard पर जा सकते हैं निम्नलिखित proguard-project.txt में जोड़ने के लिए:

-keep public class org.jsoup.** { 
public *; 
} 
+29

सब कुछ रखने के लिए कोई ज़रूरत नहीं हो रहा है। यह पर्याप्त है: -keeppackagenames org.jsoup.nodes – Erdem

+0

लाइफ सेवर ... :) –

39

समाधान एक टिप्पणी में @Erdem द्वारा पोस्ट की गई इसके बाद के संस्करण लगता है सबसे अच्छा होने के लिए। मैं इसे दृश्यता के उत्तर के रूप में दोबारा पोस्ट कर रहा हूं।

अपने ProGuard फाइल करने के लिए नीचे दिए गए पंक्ति जोड़ें

-keeppackagenames org.jsoup.nodes 

यह पर्याप्त

+0

धन्यवाद - @ एंड्रॉइड-न्यूबी को शायद इसे स्वीकार करना चाहिए ;-) – aoemerson

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