先说完整流程,正常开发程序,最后快要发布前再做混淆。想好需要混淆的规则,如有哪些接口和实体类是需要对外保留的,要是纯web程序就无所谓了,都加密了也行。如果项目用到了mybatis,mybatis接口和接口里面的方法不能混淆。

1.下载proguard

从github官方网站下载即可,地址GitHub - Guardsquare/proguard: ProGuard, Java optimizer and obfuscator

下载完成以后解压缩,我们使用bin里面的gui批处理运行。

2.在input/output里面点击input添加要加密混淆的jar,再点add output设置混淆以后的文件存储路径及名称。

在下面的library jars里面添加该jar引用的所有第三方jar包,包括jdk/lib里面的,jdk/jre/lib里面的以及项目里面的,这一步要是添加jar包不全面后续处理的时候会报错。

3.设置混淆规则,切到process步骤,点击保存配置,输入一个配置文件名称,如test.txt,然后打开该配置文件,手动编辑录入更加项目的混淆配置规则

如想保留    com.abc.def.Ggg这个类,则配置规则

-keep class com.abc.def.Ggg {
    public * ;
}

如想保留  com.abc.def这个package下面的所有类及public方法不混淆可以配置规则

-keep class com.abc.def.* {
    public * ;
}

如想保留 mybatis 接口不混淆,可以配置规则

-keep class com.abc.def.ghi.mapper.* {
    public * ;
    private *;
    protected *;
}

如果想保留实体类都不混淆,可以配置规则

-keep class com.xxx.model.* {
    public * ;
    private *;
    protected *;
}

4.修改完配置文件后,重新切换proguard回到第一个proguard项重新加载一遍配置文件,然后process处理就可以了。

proguard混淆程序过程记录相关推荐

  1. 移除挖矿程序过程记录

    前言: 早上发现一个服务器的挖矿程序预警消息: 那么接下来开始处理这个问题, 废话不说直接上有效的操作了: 1.查看系统定时任务及修改: 查看系统定时任务:方式一:crontab -lcrontab ...

  2. 微信小程序扫码跳转小程序过程记录

    这里写自定义目录标题 经验总结 测试链接配置 测试范围 开发版 体验版 经验总结 小程序开发真的很恶心,恶心,恶心 测试地址一定要和你扫码的二维码内空一模一样,包括参数,否则你会跳转到正式版,或者无法 ...

  3. [转载]关于Android ProGuard混淆学习记录

    转自:http://www.cnitblog.com/zouzheng/archive/2011/01/12/72630.aspx 前段时间把Android的工程用Ant Build搞定后,现在需要把 ...

  4. C++面经之应届生找工作的“狗日”过程记录

    C++面经之应届生找工作的"狗日"过程记录 .先附上我的座右铭: "不是因为看到希望才去坚持,而是坚持才会有希望." . 吐槽一下: 2020注定是个苦逼年,坐 ...

  5. 安卓中ProGuard混淆基本使用

    1.  简介 因为Java代码是非常容易反编码的,为了很好的保护Java源代码,我们需要对编译好后的class文件进行混淆. ProGuard是一个用于Android开发用于混淆最终的项目,增加项目被 ...

  6. AndroidStudio目录结构 APP构建流程 Jenkins持续集成构建 Gradle介绍 Proguard混淆

    Android Studio目录结构 通常我们是将工程设置成project模式,这个模式下我们的工程有很多目录: .gradle:包含一些Gradle编译脚本,gradle是Google推荐的编译工具 ...

  7. 16.04linux 安装微信,Ubuntu 16.04安装微信的过程记录

    微信没有出Linux的版本,但是可以通过以下方式解决: 1.使用网页版,除了没有公众号之后,一切都没问题,包括传文件等. 2.使用第三方版本,只不过这个是桌面应用,原理是通过网页API集成的,稳定性还 ...

  8. VS调试dll详细过程记录

    VS调试dll详细过程记录 还可以参考博客: https://blog.csdn.net/u014738665/article/details/79779632 在我们写的程序中有时候调用dll,并且 ...

  9. linux chrome 安装过程记录

    最近,由于公司需要做爬虫抓取一些新闻,在开发过程中,发现有些网站有一定的反爬措施,通过浏览器访问一切正常,通过其他方式,包括:curl,urlconnection 等,就算加入了cookie,agen ...

最新文章

  1. Silverlight 鼠标与键盘事件注意点
  2. django----admin
  3. linux下查看系统socket读写缓冲区
  4. Java面向对象(二)
  5. azure云数据库_Azure中的新弹性数据库
  6. 拓端tecdat|R语言用局部加权回归(Lowess)对logistic逻辑回归诊断和残差分析
  7. SQL Server 2012 自动增长列,值跳跃问题
  8. Mac OS 使用终端连接到Linux
  9. Hibernate框架
  10. Django入门,,适用小白
  11. zoj水题分类(自己练习)
  12. JZOJ5401. 【NOIP2017提高A组模拟10.8】Star Way To Heaven prim求mst
  13. 创客教育中常见的视觉识别摄像头介绍
  14. 深度学习FlappyBird环境搭建
  15. jQuery菜鸟学习实例
  16. 韩语 计算机术语,韩语计算机、互联网术语(1)
  17. ctf misc 学习总结大合集
  18. 27-什么是自旋锁?自旋的好处和后果是什么呢?
  19. 吸烟者问题——进程同步
  20. Android Studio 自带模拟器获取root权限

热门文章

  1. div盒子双线边框线内的颜色处理方法
  2. 百度被罚!微信被告!
  3. 关于GridView中按钮的commandargument使用
  4. Adobe Photoshop CC 2020中文版
  5. photoshop常用操作
  6. HTG项目:使用喷墨打印机创建波普艺术科幻海报
  7. 16进制转换10进制的方法
  8. RocketMQ源码(12)—Broker 消息刷盘服务GroupCommitService、FlushRealTimeService、CommitRealTimeService源码深度解析【一万字】
  9. 马云:网络借钱很方便,1分钟到账,年轻一代从不担心钱的问题
  10. Python实现圆环面积求解