linchaolong / ApkToolPlus

ApkToolPlus 是一个 apk 逆向分析工具(a apk analysis tools)。

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

中文 | English

ApkToolPlus

ApkToolPlus

ApkToolPlus 是一个可视化的跨平台 apk 分析工具。

项目地址:https://github.com/linchaolong/ApkToolPlus

功能说明

1. ApkTool

apk 反编译,回编译,签名。

apktool

2. Apk 加固

dex 加密,防逆向,防止二次打包。(注意:该功能当前并非很完善,暂不建议商用,欢迎学习交流,欢迎提交 Pull requests)。

apktool

注意:加固后的 apk 启动时会做签名校验,如果和原来的签名不匹配会启动失败,在设置界面的 ApkTool 下配置 keystore。

3. ApkInfoPrinter

apk 常见信息查看工具,如:AndroidManifest.xml,apk 签名,版本号等。支持直接拖入查看 apk 信息。

apktool

4. Apk源码查看工具

Apk 源码查看工具,支持 multi-dex。

apktool

5. 格式转换工具

jar2smali,class2smali,dex2smali(apk2smali),smali2dex,class2dex。

在设置界面,可关联 Sublime ,关联后通过工具转换后的文件会自动显示在 Sublime。

apktool

6. 角标生成工具

icon 角标生成工具

apktool

7. 其他

  • JD(Java 反编译工具)
  • JAD(Java 反编译工具),注意 jar 文件或 class 目录不要在中文路径下!!!
  • JBE(Java 字节码编辑工具)
  • Proguard(Java 代码混淆工具)

工程结构

  • app:应用主模块。
  • app.Builder:应用构建模块。
  • lib.ApkParser:apk-parser,apk 解析库。
  • lib.AXMLPrinter: AXMLPrinter2,二进制 xml 文件解析库。
  • lib.Jad: Jad ,Java 反编译工具。
  • lib.JBE: JBE ,Java 字节码编辑器。
  • lib.JiaGu:apk 加固模块。
  • lib.Proguard: Proguard ,代码混淆优化工具, Usage
  • lib.Res:应用资源模块。
  • lib.Utils:工具类模块。

ApkToolPlus.jks

  • alias: ApkToolPlus
  • password: linchaolong
  • keystore password: linchaolong

构建说明

这是一个 IntelliJ IDEA 工程。

项目的构建依赖 ant, 点击这里下载 ant,并把 ant 的 bin 目录路径配置到 Path 环境变量,执行 ant -version 命令检测是否配置完成。

1. 运行项目

直接 Run app 模块中的 com.linchaolong.apktoolplus.Main 运行 ApkToolPlus。

2. 构建apk加固模块

lib.JiaGu 是 apk 加固模块,如果有更新修改,则执行 app.Builder 模块的 com.linchaolong.apktoolplus.builder.UpdateJiaGu 自动更新打包 apk 加固库到 app 模块。

3. 打包ApkToolPlus

Build -> Artifacts... -> ApkToolPlus -> Build,ApkToolPlus.jar 将生成在 out\artifacts\ApkToolPlus 目录下,如果已经安装 jdk 可以直接点击运行。

下载

点击 这里 下载 release 版 ApkToolPlus。安装 jdk 后,双击 jar 文件即可运行 ApkToolPlus。

相关链接

dexknife-wj:Android Studio 下的 apk 加固插件,支持签名校验和 dex 加密

联系方式

最后,欢迎 Star,Fork,Issues 和提交 Pull requests,感谢 ApkToolapk-parserAXMLPrinter 等开源项目的开发者。

About

ApkToolPlus 是一个 apk 逆向分析工具(a apk analysis tools)。

License:Apache License 2.0


Languages

Language:Java 98.8%Language:CSS 0.5%Language:C 0.4%Language:HTML 0.3%Language:C++ 0.1%Language:Makefile 0.0%