ProguardGui进行jar包代码混淆(android library生成混淆jar包)

Java混淆工具 ProGuard之初体验 本文使用的是ProGuard这一款Java代码混淆工具。 因为在我们实际的开发工作中,有些程序包含了公司核心产品的代码,所以为了保护自身的知识产权,避免程序包不小心外流出去,我们有必要进行一些保护措施,在程序开发完之后,需要将程序代码进行混淆。 本文使用的是ProGuard v5.3.3版本。 下载地址:http://www.jb51.net/softs/242707.html 2.混淆... 阅读详情

前面文章《Proguard进行源代码混淆》讲解过怎么使用Proguard工具对Android的源代码进行混淆的方法(感兴趣的朋友可以访问:http://blog.youkuaiyun.com/p106786860/article/details/11974863),但是在实际工作中发现,通过上述方法对导出的Jar并没有进行混淆。 

 

下面我们就介绍,如果对导出的Jar包进行代码混淆。 

一、准备工作 

首先我们要准备好:1.你已经导出的jar包(srcjar.jar)文件,2.ProguardGui工具 (sdk\tools\proguard\bin\proguardgui.bat)。 



 

二、操作步骤 

1.启动proguardgui工具。 

双击groguardgui.bat文件,运行如下图: 


 

2.设置我们需要混淆的jar包和混淆后输出的jar包。 

点击左边的Input/Output按钮,运行如下图。在点击Add input按钮,添加我们需要进行混淆的jar包(srcjar.jar)。点击Add output按钮,填入我们要输出的jar包的名称。 


 

3.添加jar包支持的库。 

点击下面的Add按钮,一一添加jar包支持的库。建议把你的Eclipe中,项目下所有的jar包都拷贝到一个统一的目录中,然后进行添加。 


项目中所有的jar支持 


集中了所有的jar在同一个文件夹下 


添加了jar包支持的库 

 

4.依次设置混淆的各种配置 

依次点击Shrinking按钮、Obfuscation按钮、Optimization按钮和Information按钮,分别对混淆进行各种配置。 

 

5.保存混淆的配置文件 

点击Process按钮,在点击Save configuration按钮,保存我们混淆配置文件。 


 

6.根据需求修改混淆配置文件 

在真实的项目中,可能由于各种第三方的jar包,自动类和控件等问题,在混淆的时候,会导致各种类无法找到的问题。使用文本编辑器打开srcjar.pro文件,可以根据自己的需求编辑混淆配置。 

[plain]  view plain copy
  1.   
[plain]  view plain copy
  1. -injars ruyicai.jar //需要混淆的jar包    
  2. -outjars ruyicai-out.jar //混淆完毕输出的jar包   
  3.    
  4. //引用依赖的jar包   
  5. -libraryjars 'C:\Program Files\Java\jdk1.6.0_43\jre\lib\rt.jar'   
  6. … ...   
  7. -libraryjars libs\weibo-1.2.jar   
  8.    
  9. -optimizationpasses 5   
  10. -dontusemixedcaseclassnames   
  11. -dontskipnonpubliclibraryclasses   
  12. -dontpreverify   
  13. -verbose   
  14. -optimizations !code/simplification/arithmetic,!field/*,!class/merging/*   
  15.    
  16. //在混淆的过程中,建议保留Activity,Application四大组件,其它的类可根据实际情况设置是否混淆   
  17. -keep public class * extends android.app.Activity   
  18. -keep public class * extends android.app.Application   
  19. -keep public class * extends android.app.Service   
  20. … …    
  21. -keep public class com.ruyicai.activity.common.PullRefreshListView{*;}   
  22.    
  23. //不混淆第三方的jar包   
  24. -keep class com.alipay.android.app.**{*;}   
  25. … ...   
  26. -keep class cn.jpush.android.**{*;}   
  27.    
  28. //后面的规则使用默认的,这里不在描述   
  29. … ….   

7.载入混淆配置文件,对Jar进行混淆 

重新启动proguardgui程序,在点击右边Proguard按钮,点击Load configration按钮,导入上面配置好的混淆文件。 


然后点击右边Process按钮,再次点击下面的Process按钮,进行Jar的混淆。 


如出现上图successfully提示,则混淆完毕 


转载自:http://blog.youkuaiyun.com/p106786860/article/details/12168703

java17使用proguard进行代码混淆的方案 proguard进行代码混淆 阅读详情

相关推荐

驱动钛丝(SMA)的应用(5)汽车腰托气阀常见问题及解决方案

财哥在前段时间发布的《驱动钛丝(SMA)的应用(1)汽车腰托支撑按摩气阀模块》一文,引发了很多企业的拜访和交流。 目前很多厂家已经启动或正在进行相关研发,同时也遇到了诸如:钛丝选型、驱动位移、响应设计、温度控制、力量设计、点动滞后、铆接工艺、量化生产等问题。

weixin_39168671的博客 1241

ProGuard对java jar包实现混淆加密

随时随地阅读更多技术实战干货,获取项目源码、学习资料,请关注源代码社区公众号(ydmsq666) 转自:http://blog.youkuaiyun.com/xinke0802/article/details/45438749 Java代码编译后生成的.class 中包含有源代码中的所有信息(不包括注释),...

孤云博客 1万+

3A之自动对焦(AF)算法:从Tenegrad到拉普拉斯的清晰度评价实战

本文深入解析自动对焦(AF)算法的核心——清晰度评价函数,通过实战对比Tenegrad、方差、能量梯度、Brenner和拉普拉斯五大经典算法的原理、代码实现与性能。文章详细阐述了各函数在计算速度、抗噪性和单峰性上的优劣,并提供了从仿真测试到硬件部署的优化策略,帮助开发者根据实际场景选择最合适的AF算法。

weixin_29281915的博客 313

简单使用ProGuard混淆jar包

开发项目的时候需要向别人提供SDK,又不想让别人看到源码,会用到混淆。 简单记录下ProGuard混淆jar包的方法: 首先,proguardgui.bat是在android sdk 目录下(Android\sdk\tools\proguard\bin); 运行proguardgui.bat,会弹出一个ProGuard界面: 全是英文,不

w15013761160的博客 3516

《网络安全自学教程》- OSI七层模型分层及作用,数据封装与解封过程,数据传输过程。

OSI分哪七层,每层的作用是什么,解释数据在七层模型中是怎样传输的,封包和解封过程,数据包在每一层是怎么封装和解封的。

wangyuxiang946的博客 1万+

【Docker】完美解决拉取镜像超时报错:ERROR: Get https://registry-1.docker.io/v2/

因为我们下载的镜像是外网的镜像资源,所以下载的速度会非常的慢,甚至大概率下载时会报错,所以需要我们配置一个国内的服务器镜像地址,国内服务器镜像地址有很多,这里咱们就说一下阿里镜像加速器的配置方法。

liu_chen_yang的博客 12万+

Java代码混淆工具ProGuard(附有1.8以上和以下使用工具)使用详解

ProGuard是Java类文件收缩器,优化器,混淆器和预验证器。快速混淆Java代码。

m0_46208105的博客 9596

线性自抗扰控制(LADRC)系统算法框图

NLADRC自抗扰控制从Simulink仿真到PLC控制实现_自抗扰控制器 simulink仿真-优快云博客本文介绍了如何将ADRC自抗扰控制算法从Simulink仿真应用到PLC控制中,包括Simulink框图、TD微分器模型、MATLAB函数的使用、SCL控制代码,以及非线性状态误差反馈控制率的实现。提供了详细的MATLAB仿真步骤和PLC源代码链接。ADRC自抗扰控制算法(含梯形图完整源代码和算法公式)_adrc算法-优快云博客。

RXXW_Dor的博客 1463

使用proguard对Android Library中代码进行混淆

当我们自己创建一个android的Library,

wang8651971的专栏 2387

STM32(HAL库)驱动OLED

通过STM32F103C8T6单片机采用HAL库方式对0.96寸OLED(IIC通讯)屏幕进行驱动。

weixin_44597885的博客 8800

14、固态变压器(SST)供电的直流微电网控制策略解析

本文详细解析了基于固态变压器(SST)供电的直流微电网的分层功率管理与控制策略。重点介绍了二次控制和三次控制算法的原理及实现方式,探讨了将SST作为固态同步电机(SSSM)的控制概念及其频率调节方法。通过小型直流微电网的实验案例验证了控制策略的有效性,并对不同三次控制方法的优缺点进行了比较。最后,文章提出了未来控制策略的优化方向,包括通信技术提升、多目标优化和智能算法的应用,为直流微电网的可靠、高效运行提供了理论支持和实践指导。

star的博客 551

Android中使用proguardgui混淆jar包

本文章的前提条件是,读者已经掌握了正确导出jar包的技能。 1、拷贝Android项目中“proguard.cfg”文件到你指定的位置,并改名为“proguard.pro”,此步是为proguardgui应用做前期的配置。 2、在android开发sdk相应的目录下找到proguardgui启动入口,mac os上的路径如下 “/Users/jayhomzho

Tiger Leap(虎跃) 1097

2023最新多文明策略手游《万国觉醒内购版》最新整理Linux商业手工服务端+安卓+详细搭建教程

2023最新多文明策略手游《万国觉醒内购版》最新整理Linux商业手工服务端+安卓+详细搭建教程。源码内置详细搭建教程,感兴趣可自行下载。

百创科技 1713

Android JAR包手动混淆操作

当你的jar包需要给第三方开发者使用或者是app要发布的时候,java的混淆技术可以隐藏一定的技术细节。通过适当的配置文件可以把jar包需要开放的接口或者公开API暴露出来,从而不影响正常的使用。 无论是使用eclipse的集成环境还是直接使用proguard命令行进行混淆,都需要一个配置文件,在eclipse中是project根目录下的proguard-project.txt。

开发就是不断的发现不足与学习 1423

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

【Android】jar包Proguard混淆方法

http://www.cnblogs.com/rayray/p/3421028.html

壹口尘埃 1027

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

jar包Proguard混淆方法

1、导出jar包,拷贝Android项目中“proguard.cfg”文件到你指定的位置,并改名为“proguard.pro”,此步是为proguardgui应用做前期的配置。2、在android开发sdk相应的目录下找到proguardgui启动入口 /sdk/tools/proguard/bin, 启动proguardgui3、加载“1”中的”proguard.pro”配置文件4、配置需要混淆

Dulcie的技术点滴 1481

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

ProguardGui工具进行jar包混淆(android library生成混淆jar包)

引用:http://blog.youkuaiyun.com/android_panda/article/details/18604121   关键是添加一下代码在Save configuration保存的文件中: /** *proguard 配置 *最常用的配置选项 *-dontwarn 缺省proguard 会检查每一个引用是否正确,但是第三方库里面往往有些不会用到的类,没有正确引

u012865341的专栏 439

Eclipse导出Library

在工作中遇到开发SDK,记录下导出Library的过程。      Library需要混淆,在项目中添加混淆配置。如下:       project.properties文件      # This file is automatically generated by Android Tools. # Do not modify this file -- YOUR CHANGES WILL

nacl025的专栏 2584

Proguardgui

1、拷贝Android项目中“proguard.cfg”文件到你指定的位置,并改名为“proguard.pro”,此步是为proguardgui应用做前期的配置。 2、在android开发sdk相应的目录下找到proguardgui启动入口,mac os上的路径如下 “/Users/jayhomzhou/IDE/Android/adt-bundle-mac/sdk/

hqdoremi的专栏 1132

android 打jar包

一、java bin 目录下的jar命令 jar -cvf xxx.jar 创建jar包 jar -xvf xxx.jar com/test/xxx.class  从xxx.jar包中加压出xxx.class文件。 二、android如何把jar包打成混淆包。 本文章的前提条件是,读者已经掌握了正确导出jar包的技能。 1、拷贝Android项目中“proguard.cfg”

xiaobeibeinihao的专栏 851

Android工程打成jar包,并进行混淆

目前我打包的这个android工程是一个纯java工程,也就是没有使用到任何资源文件及组件类。所以打包的话还是相对简单的。 刚开始,我把这个工程当做一个library引用到主工程中,编译过后,在该工程的bin目录下面,就自动生成了一个jar包。正常情况下可以直接使用这个jar包。 但是目前,我们的library工程中还引用了assets/目录下的文件,而自动生成了这个jar包并没有包含这个as

网鱼的栈 750

ProGuard与Retrace:终极Android混淆堆栈跟踪还原工具使用教程

ProGuard是一款强大的Java代码混淆工具,能够通过重命名类、方法和字段来保护你的Android应用,同时减小应用体积。而Retrace作为其配套工具,则能将混淆后的堆栈跟踪信息还原为原始代码位置,是开发者调试生产环境错误的必备利器。本文将详细介绍这两款工具的核心功能和使用方法,帮助你轻松掌握代码混淆与调试技巧。 ## 为什么需要ProGuard与Retrace? 当你发布Android

gitblog_01002的博客 364

打jar、aar包

参考 二者区别:     jar: 只包含了class文件与清单文件 ,不包含资源文件,如图片等所有res中的文件。     aar: 包含jar包和资源文件,如图片等所有res中的文件。     个人觉得还是用as提供的aar包比较好,编译完就生成了aar了,不用担心资源问题 一、生成jar 1、创建一个类库 2、类库工程下的build.gradle中加上: //修改jar名

习伏众,神巧者不过习者之门 551
上一篇: Android项目打第三方jar包(Android使用固定id值)
下一篇: 一张图明白各种开源协议的规则
android_panda
博客等级 码龄15年 28粉丝 48原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值