android JAR混淆
来源:互联网 发布:深圳网络安防培训学校 编辑:程序博客网 时间:2024/04/25 01:09
下面我们就介绍,如果对导出的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文件,可以根据自己的需求编辑混淆配置。
- -injars ruyicai.jar //需要混淆的jar包
- -outjars ruyicai-out.jar //混淆完毕输出的jar包
- //引用依赖的jar包
- -libraryjars 'C:\Program Files\Java\jdk1.6.0_43\jre\lib\rt.jar'
- … ...
- -libraryjars libs\weibo-1.2.jar
- -optimizationpasses 5
- -dontusemixedcaseclassnames
- -dontskipnonpubliclibraryclasses
- -dontpreverify
- -verbose
- -optimizations !code/simplification/arithmetic,!field/*,!class/merging/*
- //在混淆的过程中,建议保留Activity,Application四大组件,其它的类可根据实际情况设置是否混淆
- -keep public class * extends android.app.Activity
- -keep public class * extends android.app.Application
- -keep public class * extends android.app.Service
- … …
- -keep public class com.ruyicai.activity.common.PullRefreshListView{*;}
- //不混淆第三方的jar包
- -keep class com.alipay.android.app.**{*;}
- … ...
- -keep class cn.jpush.android.**{*;}
- //后面的规则使用默认的,这里不在描述
- … ….
7.载入混淆配置文件,对Jar进行混淆
重新启动proguardgui程序,在点击右边Proguard按钮,点击Load configration按钮,导入上面配置好的混淆文件。
然后点击右边Process按钮,再次点击下面的Process按钮,进行Jar的混淆。
如出现上图successfully提示,则混淆完毕
- 混淆ANDROID JAR包
- Android -- jar包混淆
- android JAR混淆
- android jar包混淆
- android 混淆发布jar
- Android jar包混淆
- Android -- jar包混淆
- android 代码混淆(jar包混淆)
- jar包混淆 以及 Android代码混淆
- android 混淆jar 或者library混淆
- android 混淆jar 或者library混淆
- android 导出Jar包混淆
- android 项目生成jar混淆
- android eclipse 混淆jar代码
- Android jar生成及其混淆
- Android studio 混淆jar包
- Android jar包的混淆
- android 使用proguard 混淆jar
- 弹幕实现
- HDOJ 1005 Number Sequence 循环数列求值 C语言实现
- iOS7 - UIActionSheet 按钮不响应点击事件的解决方法
- 黑马程序员-java基础-异常总结
- 在Unity里点击按钮打开一个浏览器页面 点击关闭 关闭这个页面
- android JAR混淆
- Android 使用shareSDK进行第三方登录失败解决方法(微信,微博,qq)
- iOS - 工具函数
- JPA基本API描述
- Spark MLlib Deep Learning Neural Net(深度学习-神经网络)1.1
- js和jsp的执行顺序
- GeoServer和MapServer的对比[转]
- 高仿支付宝手势解锁(增强版)
- 输入输出XML和YAML文件