Apktool 是一个反编译Android Apk的第三方工具。它可以反编译资源,并在进行修改之后重新打包Apk。

官网:Apktool - A tool for reverse engineering 3rd party, closed, binary Android apps.

1、安装 apktool

注意:apktool 依赖 Java1.8。请使用 java -version 查看,是否为1.8或更高版本。

主要的安装流程:

1、下载运行脚本,根据不同平台保存为不同的名字。--- 运行脚本非必须,但可以避免一次次的重复敲 java -jar ...  来执行操作

2、下载最新版本的 apktool.jar --- 下载后可能不叫这个名字,但是通过脚本运行的话,要求为这个名字,修改为这个就行

3、将脚本和jar放到同一个目录下 --- 官方建议放到指定目录,我试过Windows和Mac,并不是一定要放到指定目录,也可以正常使用

4、进入命令行,cd 到相应目录,执行命令

官网安装教程

apktool目录

2、手动build源码生成apktool

apktool的官网上详细介绍了如何build源码生成apktool:Apktool - Build Guide

apktool集合了几个子工程和依赖到一个工程中。其中包括:

brut.apktool.lib - 主工程,主要逻辑代码

brut.apktool.cli - 命令行接口工程

brut.j.dir - 工具工程

brut.j.util -工具工程

brut.j.common -工具工程

要求JDK8,git(不从github上clone代码则不需要git)

build的步骤:

1、clone或者下载代码

git clone git://github.com/iBotPeaches/Apktool.git

2、在命令行中,进行到项目根目录下,执行gradlew.bat脚本,其他基于unix的系统执行./gradlew

3、打包shadowJar,此jar包会将依赖都打包进去。

gradlew.bat build shadowJar

4、打包混淆过的jar

gradlew.bat build shadowJar proguard

输出目录:./brut.apktool/apktool-cli/build/libs/apktool-xxxxx.jar

特别注意:Windows平台下,目录深度不能超过255个字符。目前apktool项目最深目录达到218个字符!所以apktool根目录的存放路径不能超过37个字符!!!

3、反编译apk

反编译命令:apktool d apk路径

执行过程中会输出主要步骤log

反编译apk

4、反编译结束后,反编译的内容均在目录下的 相应文件夹下 -- 文件夹名字与apk同名

反编译成功

5、重新打包

假如你进行了修改,现在进行重新打包

命令:apktool b 项目目录

我们使用的就是上一步反编译后,生成的目录

重新打包工程中,同样会输出主要步骤的log

重新打包

重新生成的apk位于目录中的 dist 目录下,如图

重新生成的apk

需要注意的是,重新生成的apk,是没有经过签名的,不能直接进行安装。

6、apk的签名

1:重新打包:.\apktool b G:\code\mirrors-Apktool-master\Apktool\scripts\windows\water

2:生成签名:keytool -genkey -alias water.keystore -keyalg RSA -validity 40000 -keystore water.keystore

3: apk重新签名:jarsigner -verbose -keystore water.keystore water.apk water.keystore

Apktool 使用教程相关推荐

  1. 2021 Android APK反编译 apktool使用教程

    欢迎交流.微信公众号:一休日记. 目录 前言: 工具介绍: 新版本apktool用法: Smali2JavaUI 前言: 最近我在使用Android Studio混淆打包release版本,打包是否成 ...

  2. android apktool使用教程,Apktool 使用教程

    Apktool 是一个反编译Android Apk的第三方工具.它可以反编译资源,并在进行修改之后重新打包Apk. 1.安装 apktool 注意:apktool 依赖 Java1.8.请使用 jav ...

  3. Android APK反编译 apktool使用教程

    下载apktool:https://ibotpeaches.github.io/Apktool/install/ 根据文档操作下载,命名等 工具介绍: apktool 作用:主要查看res文件下xml ...

  4. linux apktool使用教程,简单介绍ubuntu下apktool的使用与配置

    apktool 使用 1.解包(反编译):apktool d -f xxx.apk -o xxx 2.二次打包: apktool b xxx -o xxx.apk 3.签名 java -jar sig ...

  5. Android逆向之旅—反编译利器Apktool使用教程(Apktool的安装使用)建议新手浏览

    文章目录 一.下载软件 第一步(apktool.bat) 第二步(apktool.jar) 二.安装软件 三.使用软件 解包 修改文件 重打包 签名 生成keystore文件 进行签名 四.使用 一. ...

  6. apktool反编译详细使用教程

    apktool反编译详细使用教程,包括每个细节.还有为什么反编译不成功,反编译出现的各种情况将为大家详细写出来,如有写的不好的地方还请见谅,这些都是本人自学的,曾经请教过大神,让我悲剧的是尽然无一人为 ...

  7. ApkTool(Apk反编译工具)电脑版

    ApkTool是一款用于安卓逆向工程的开源软件.相信从事安卓开发的用户对于apk解包和压缩包一定不陌生,这款软件就能帮助用户去对APK数据包进行反编译操作,功能非常的强大.它支持在Windows系统中 ...

  8. apktool反编译apk教程

    1.准备工具 (1)apktool的下载地址:https://bitbucket.org/iBotPeaches/apktool/downloads/ 点击超链接下载最新版本 (2)apktool.b ...

  9. [转自安智论坛]Android软件汉化教程(强制汉化/Apktool汉化/精简/去广告)

    前言: 现在随处都可以找到功能强大的汉化工具,操作简单,上手快,汉化不再是件麻烦事. 想学汉化的朋友只要你用心,你也可以自己汉出优秀的作品,因为汉化根本没啥技术含量,要的只是持之以恒. 不要再羡慕别人 ...

  10. 【ROM修改教程】添加高级电源重启菜单(安卓4.0.4官方ROM)

    准备工作: 电脑上安装好JDK.下载smali和baksmali.下载apktools.要修改的ROM.adb工具(可选) 注:由于本教程面向的对象为有一定ROM修改基础的兄弟,所以对于如何使用电脑, ...

最新文章

  1. Linux Bash终端支持中文显示
  2. iOS发展- 文件共享(使用iTunes导入文件, 并显示现有文件)
  3. .Net 实用技术收藏!!!
  4. css文件修改后没变化 static_Go Web编程使用Go语言创建静态文件服务器
  5. html 去除max-height,HTML Style maxHeight用法及代码示例
  6. 20162305《程序设计与数据结构》第1周学习总结
  7. phpstudy for linux版环境安装
  8. ImportError: No module named ‘numpy‘的解决办法
  9. python diango 增删改查_python中关于django对数据库Mysql的增删改查操作详解
  10. 给Ionic写一个cordova(PhoneGap)插件
  11. 读书笔记—产品型社群:互联网思维的本质
  12. 网络模块的568B和568A
  13. 阿里淘宝Nginx升级版Tengine
  14. 面试系列——爱奇艺Andromeda 跨进程通信组件分析
  15. 【教程】手机远程连接另一台手机的termux进行拍照
  16. 在 Windows 下用 GCC 编译器练习 C/C++ 的简单教程
  17. 如何设置Java环境变量
  18. 11月编程语言排行冠军揭晓,稳
  19. VUE 百度离线地图的下载与使用
  20. python海龟绘图画玫瑰花_python学习(二)之turtle库绘图

热门文章

  1. 网络抖动、丢音、卡顿
  2. 银河麒麟鸿蒙计划,银河麒麟Kydroid2.0发布,支持海量安卓APP,要抢鸿蒙的风头吗?...
  3. 巴比特 | 元宇宙每日必读:时薪100万,「虚拟主播」的吸金能力被证实,其背后的公司IPO申请获批...
  4. MoFlow:生成分子图的可逆流模型
  5. GLUE部分基准数据集介绍:RTE、MRPC、SST-2、QNLI、MNLI、QQP
  6. 神经元如何将视觉世界映射到人脑?
  7. 创作swing 绝对布局 窗口事件 鼠标事件 键盘事件 上传头像流程
  8. linux 通过关键字查询到进程,并kill掉
  9. 《Excel高手捷径:一招鲜,吃遍天》一第18招 怎样在Excel中插入方框内打勾符号(√)和方框内打叉符号(×)...
  10. 【已解决】iOS程序出现警告:ARC Semantic Issue,Assigning retained object to unsafe property;object will be releas