您的位置:首页 > 移动开发 > Android开发

proguard混淆带第三方库android项目-java mail

2014-06-22 21:37 501 查看
已使用javamail包来完成邮件发送功能的工程为例

在proguard.cfg加入以下脚本

-injars lib/mail.jar

-injars lib/activation.jar

-injars lib/additionnal.jar

-libraryjars lib/mail.jar

-libraryjars lib/activation.jar

-libraryjars lib/additionnal.jar

此外,再添加以下脚本以确保这些类不被混淆

-keep class javax.mail.**

{

*;

}

-keep class javax.mail.internet.**

{

*;

}

加入以上脚本之后,再使用ant来进行混淆,可能会遇到很多Note和Warn导致混查看淆失败,

这个时候,可以使用ant release >log.txt将混淆过程中的日志指定输入到文件,以便纠正



特别说明:

note和warn都是proguard的根据相关性,给出的以下可能的错误或者缺失的提醒,并不一定会对我们的使用有影响,具体则需要看note和warn的具体内容。



对于Note部分,可以在proguard.cfg中添加以下加班来过滤屏蔽这部分

-dontnote

对于warn部分,则需要根据log中的内容,来做针对性的处理,如

-dontwarn javax.mail.**

-dontwarn javax.mail.internet.**

-dontwarn java.awt.**

-dontwarn javax.security.**

-dontwarn com.sun.mail.imap.protocol.**



///////////////////////endif 2012-07-13

如果工程中使用了Annotation相关的内容,需要在proguard.cfg中添加以下内容

-keepattributes *Annotation*

(参考http://charles-tanchao.diandian.com/post/2012-05-24/20118715
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: