gmailsender not working when using proguard
android
Solution
Finally solved the problem by updating to latest version of proguard from 4.7 to 4.9.
also added the following to the proguard config file
-dontwarn java.awt.**
-dontwarn java.beans.Beans
-dontwarn javax.security.**
-keep class javamail.** {*;}
-keep class javax.mail.** {*;}
-keep class javax.activation.** {*;}
-keep class com.sun.mail.dsn.** {*;}
-keep class com.sun.mail.handlers.** {*;}
-keep class com.sun.mail.smtp.** {*;}
-keep class com.sun.mail.util.** {*;}
-keep class mailcap.** {*;}
-keep class mimetypes.** {*;}
-keep class myjava.awt.datatransfer.** {*;}
-keep class org.apache.harmony.awt.** {*;}
-keep class org.apache.harmony.misc.** {*;}
Problem
I am using the gmailsender to send email in my app. I followed the link below Sending Email in Android using JavaMail API without using the default/built-in app I have however noticed that whenever I use proguard to build my APK, then the gmail sender does not work(when I install that APK). There is no error thrown, but emails are not sent. If I disable proguard and then generate the APK, then it works fine using that APK. Can anyone please suggest what might be wrong here. :::EDIT:::-ADDED FEW ERROR MESAGE(abridged) LINES FROM CONSOLE WHILE GENERATING APK. I COULD GET RID OF THOSE WARNING HOWEVER BY IGNORING THEM IN PROGUARD CONFIG FILE ``` [2013-07-09 10:00:38 - ] Proguard returned with error code 1. See console [2013-07-09 10:00:38 - ] Warning: org.apache.harmony.awt.datatransfer.DataProxy: can't find superclass or interface java.awt.datatransfer.Transferable [2013-07-09 10:00:38 - ] Warning: org.apache.harmony.awt.datatransfer.NativeClipboard: can't find superclass or interface java.awt.datatransfer.Clipboard [2013-07-09 10:00:38 - ] Warning: com.sun.mail.imap.protocol.IMAPSaslAuthenticator: can't find referenced class javax.security.sasl.Sasl [2013-07-09 10:00:38 - ] Warning: com.sun.mail.imap.protocol.IMAPSaslAuthenticator: can't find referenced class javax.security.sasl.Sasl [2013-07-09 10:00:38 - ] Warning: com.sun.mail.imap.protocol.IMAPSaslAuthenticator: can't find referenced class javax.security.sasl.SaslClient [2013-07-09 10:00:38 - ] Warning: com.sun.mail.imap.protocol.IMAPSaslAuthenticator: can't find [2013-07-09 10:00:38 - ] Warning: com.sun.mail.imap.protocol.IMAPSaslAuthenticator$1: can't find referenced class javax.security.auth.callback.NameCallback [2013-07-09 10:00:38 - ] Warning: com.sun.mail.imap.protocol.IMAPSaslAuthenticator$1: can't find referenced class javax.security.sasl.RealmCallback [2013-07-09 10:00:38 - ] Warning: com.sun.mail.imap.protocol.IMAPSaslAuthenticator$1: can't find referenced class javax.security.sasl.RealmChoiceCallback [2013-07-09 10:00:38 - ] Warning: javax.activation.CommandInfo: can't find referenced class java.beans.Beans [2013-07-09 10:00:38 - ] Warning: javax.activation.CommandInfo: can't find referenced class java.beans.Beans [2013-07-09 10:00:38 - ] Warning: org.apache.harmony.awt.ContextStorage: can't find referenced class java.awt.Toolkit [2013-07-09 10:00:38 - ] Warning: org.apache.harmony.awt.ContextStorage: can't find referenced class java.awt.GraphicsEnvironment [2013-07-09 10:00:38 - ] Warning: org.apache.harmony.awt.ContextStorage: can't find referenced class java.awt.Toolkit [2013-07-09 10:00:38 - ] Warning: org.apache.harmony.awt.ContextStorage: can't find referenced class java.awt.Toolkit [2013-07-09 10:00:38 - ] You should check if you need to specify additional program jars. [2013-07-09 10:00:38 - ] Warning: there were 247 unresolved references to classes or interfaces. [2013-07-09 10:00:38 - ] You may need to specify additional library jars (using '-libraryjars'). [2013-07-09 10:00:38 - ] java.io.IOException: Please correct the above warnings first. [2013-07-09 10:00:38 - ] at proguard.Initializer.execute(Initializer.java:321) [2013-07-09 10:00:38 - ] at proguard.ProGuard.initialize(ProGuard.java:211) [2013-07-09 10:00:38 - ] at proguard.ProGuard.execute(ProGuard.java:86) [2013-07-09 10:00:38 - ] at proguard.ProGuard.main(ProGuard.java:49 ```