开发过程中需要把相关功能打成jar包供别人调用,如果不混淆的话,调用方可以直接看到源码
考虑到隐私,我们需要将jar包进行混淆
分两步来做
1.打一个jar包
eclipse下
export-->java-->jar file-->选择工程-->
不含资源文件的话src勾选下-->写下导出jar包路径以及名称-->一直next生成jar包
生成一个没有被混淆过的jar包
2.对jar包进行混淆
用android 自带的ProGuard工具
工具路径 Android\android-sdk\tools\proguard\bin\proguardgui.bat
打开后,ProGuard的tab下 点击 "Load Configuration"
选择一个pro文件,修改相关文件名,路径,配置参数
大致如下:
-optimizations
!code/simplification/arithmetic,!field/*,!class/merging/*
//...begin
#混淆后的导出jar包的位置和jar包名
-outjars
'E:\test_after.jar'
#原始jar包的位置和jar包名
-injars
'E:\test.jar'
#jar包依赖的其他库的位置和名称
-libraryjars
'E:\workspace\beautytilepuzzle\libs\alipay_msp.jar'
-libraryjars
'E:\workspace\beautytilepuzzle\libs\android-support-v4.jar'
-libraryjars
'E:\android\adt-bundle-windows-x86-20130219\sdk\platforms\android-10\android.jar'
#下面的Test类将不会被混淆,这样的类是需要被jar包使用者直接调用的
-keep
public class com.example.Test
{
public <fields>;
public <methods>;
}
//...end
-keep
public class *
extends android.app.Activity
接着一直next,最后选择process,正常情况下会提示success~
分享到:
相关推荐
Android JAR 包混淆详解 Android JAR 包混淆是一种保护 Java 代码的方式,它可以将 JAR 包中的代码混淆,使得攻击者无法轻易地反编译和盗用代码。混淆过程中,需要使用 ProGuard 工具,该工具可以将 JAR 包中的代码...
proguard最新版jar包混淆工具,能使部署的jar包不让对方破解
"最新Java JAR包混淆工具"提及的ProGuard正是一种广泛使用的解决方案,它能够对Java字节码进行混淆、优化和压缩,以防止未经授权的反编译和逆向工程。 **ProGuard** 是一个免费的Java类文件混淆器、优化器和 ...
"jar包混淆工具.zip"就是这样一个工具,它包含了混淆jar包所需的功能。 混淆工具的主要目的是通过重命名类、方法和变量,使得反编译后的代码变得难以理解和分析。这不仅增加了代码的安全性,还能有效减少jar包的...
Java的Jar包混淆器ProGuard v3.8是一款强大的代码优化和保护工具,主要用于Java和Android应用程序。在软件开发过程中,源代码的安全性和保密性至关重要,而ProGuard提供了一种有效的解决方案,它能够对编译后的字节...
jar包混淆工具5.2.1版本,最新的混淆工具包
本文将深入探讨如何对Java jar包进行混淆加密,以及相关工具的使用。 一、代码混淆的重要性 代码混淆的主要目的是使原始的Java代码变得难以理解和反编译。这通过改变类、方法和变量的名称,以及重排和优化代码结构...
"jar包混淆文档,防止代码反编译"的主题聚焦于通过Allatori这一工具来增强Spring Boot应用的安全性,避免源代码被恶意分析或盗用。下面将详细介绍Allatori代码混淆、反编译的概念以及如何在Spring Boot项目中应用...
本文将深入探讨如何实现对jar包的混淆加密,以提高程序的安全性。 首先,我们需要了解混淆(Obfuscation)的概念。混淆是将可读性强的代码转换为难以理解的形式,使得反编译后的代码变得难以阅读和分析。这有助于...
Android混淆打包不混淆第三方jar包Android 混淆打包不混淆第三方jar包
配置中的`<option>`标签用于指定需要保留的类或方法,`<obfuscate>true</obfuscate>`开启混淆,`<injar>`和`<outjar>`分别定义输入和输出的jar文件路径。 3. **执行打包**: 在IDEA中,可以通过点击“Maven”面板...
- 测试混淆后的JAR文件,确保其功能正常,因为混淆可能会改变类和方法的名称,导致意外问题。 - 使用`-keepparameternames`和`-keepclassmembers`等选项,以保持注解和参数名,这对于运行时依赖反射的代码非常重要。...
本篇文章将详细讲解如何使用Maven插件`proguard-maven-plugin`来对可执行JAR文件进行混淆。 首先,我们需要理解ProGuard是一个强大的Java类文件混淆器,它可以删除无用的代码,缩短类和方法的名称,以及重新打包类...
该项目源码基本c 封装本地加密算法API,通过java代码实现指令深度路径遍历加密逻辑并调用JNI本地调用接口加密coar,通过window批处理指令startup.bat运行启动,界面如下图所示,浏览GitHub查看源码...
5. **体积压缩**:混淆后的代码通常会变得更小,因为不必要的代码已被删除,ProGuard会进一步压缩代码,减少jar包的大小。 6. **最后处理**:ProGuard会生成映射文件,记录原始名称和混淆后的名称对应关系,以便于...
本文将深入探讨如何在Android Studio和Eclipse中生成jar包,并介绍混淆jar包的实践方法。 首先,我们来讨论在Android Studio中生成jar包的步骤: 1. **打开Android Studio项目**:确保你已有一个Android项目,然后...
本示例聚焦于“Gradle混淆_打包Jar包基础DEMO”,它涉及到两个核心概念:Gradle混淆和使用Gradle打包Java应用程序为Jar包。 首先,让我们深入了解一下Gradle混淆。混淆是在Android开发中常用来保护代码安全、减小...
本篇将深入探讨Gradle的基础知识,特别是如何进行混淆和打包Jar包。 Gradle混淆主要针对Android开发,因为Android Studio默认使用的构建工具就是Gradle。混淆的主要目的是为了保护代码安全,减少逆向工程的可能性。...
除了xjar,还有其他一些工具和方法也可以用来加密Java jar包,如ProGuard、JARfuscator等,它们提供混淆、优化和加密等功能,增加逆向工程的难度。 在实际项目中,为了提高安全性,通常会结合使用多种保护措施,...
可以选择多个 jar 包混淆输出成一个 jar 包。 4. 配置那些内容在混 淆时忽略的。例如,可以选择忽略“Library”和“Enumeration”。 5. 注意红框的选项,勾选后混淆出来的 jar 包可能导致在主项目中使用时报错。 6. ...