J'essaie d'utiliser JavaMail dans mon application Android, mais PROGUARD se plaint de toute une charge de choses qu'elle ne peut pas trouver. J'ai essayé divers remèdes que j'ai trouvés lors de la recherche sur Internet, mais rien ne semble fonctionner. Quelqu'un a-t-il eu cette chose travaillant? Merci.
J'ai ajouté des commandes -Dontwarn sur le défauly proguard.cfg et a réussi à éliminer tous les messages d'avertissement, à l'exception de celui-ci: p> Cet avertissement est pas même dans le même format que tous les autres. p> p>
3 Réponses :
CFR. Manuel de PROGUARD> Dépannage> AVERTISSEMENT: Impossible de trouver une superclasse ou une interface. < / p>
Questions et réponses similaires plus détaillées Aujourd'hui: une sur Stackoverflow et Le message d'erreur brouillon "[ljava.awt.datransfer.dataflavor;" a été résolu dans Proguard 4.6. Vous pouvez simplement remplacer proguard.jar dans l'Android SDK. Sinon, vous pouvez contourner le problème en répertoriant la classe de référencement au lieu de la classe référencée: "-Dontwarn org.apache.harmony.ataproxy". P>
Besoin de procéder à ces étapes pour utiliser la solution "cochée" si vous utilisez une version plus ancienne de PROGUARD (PRE-4.6). Vérifiez la version Praguard: Stackoverflow.com/Questtions/5013163/...
Utilisez-vous ce projet: Javamail-Android ? p>
Cela a fonctionné pour moi sans un seul attelage (certes utilisant les paramètres PROGUARD par défaut dans le 2.3 SDK), le problème peut donc être que le problème standard requiert des classes AWT qui ne sont pas présentes dans Android. P>
Le code d'échantillon associé est chez Envoi d'e-mails sans intervention de l'utilisateur (aucune intention d'intention) dans Android < / a> p>
J'ai utilisé ce code comme point de départ de ma propre application, et je n'ai eu aucun problème tant que j'essayais d'exporter un APK.
ATTENTION: B> Cette bibliothèque JavaMail-Android possède une licence GPL, ce qui signifie que vous ne pouvez pas utiliser dans une application commerciale sans ouvrir votre application.
J'utilise le 2.1 SDK, ce qui pourrait faire une différence. J'ai aussi un email assez complexe. Mais je l'ai triée maintenant, en passant à la mise à niveau vers PROGUARD 4.6 et en ajoutant les lignes suivantes à My PROGUARD, CFG:
-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.** {*;}
Vient de l'essayer et ce correctif est nécessaire pour le 2,3 SDK :-(
A eu le même problème! Merci beaucoup! Fonctionne bien!
@Philip: merci monsieur monsieur pour moi et travaille maintenant JavaMail dans mon projet
Merci! Utilisé plusieurs approches en vain (c'est-à-dire -libraryjars
Cette solution permet de compilation, mais de casser la fonctionnalité par e-mail (au moins pour moi): / Celui-ci est ok: Stackoverflow.com/Questtions/10850304/...
J'ai eu des problèmes de proguard dans le passé, mais je ne peux pas vraiment aider à moins que vous ne puissiez être plus précis. Pouvez-vous publier le message d'erreur ou toute autre information supplémentaire que vous avez?
Ce serait difficile. Il y a 247 messages d'erreur et la sortie dépasse la limite de taille d'une question.
Êtes-vous en mesure de déterminer quelles lignes peuvent être pertinentes? Ou, vous pouvez utiliser gist ou Pastebin pour poster les données complètes.