一、反编译
默认你的电脑中完好的有java环境
1、下载 Android killer 链接: https://pan.baidu.com/s/1s6lfm8CbdU9ABYEOhdFWxA 提取码: n4uj
2、解压后打开 Android killer.exe 运行
3、打开文件开始解压
(1)如果显示未检测到资源文件,(smali" 目录不存在,无法继续下步分析 分析失败!)
且此时你的~/AndroidKiller/projects/yourProject/ProjectSrc目录下无dex文件,说明 apktool.jar 版本较低,需要更新。你可以从以下任意网址下载:
1)https://bitbucket.org/iBotPeaches/apktool/downloads/
2)https://ibotpeaches.github.io/Apktool/
3)https://github.com/rover12421/ShakaApktool
4)https://github.com/iBotPeaches/Apktool
下载好之后,将文件拷贝到~/AndroidKiller/bin/apktool/apktool 下,你可以直接选择更改名称覆盖原文件,或者打开AndroidKiller 切换到Android 选项下 选择 APKTOOL管理器进行添加。
(2)此时重启你的AndroidKiller ,重新添加文件,你的项目源文件目录下已经出现了dex文件,但是你的进程会卡在反编译。(一直显示反编译中)
(3)这时需要我们手动反编译 dex到 smali 文件和jar文件 ,
从以下网址下载脚本 链接: https://pan.baidu.com/s/1OBZV-olEE9n2AJlLib6YGQ 提取码: pbi3
按照压缩包里的说明反编译dex,刷新文件夹,可以看到源文件下出现smali文件夹和jar文件。
(4)再次打开项目文件,可以看到smali文件,选择一个文件打开后我们可以,点击使用java源码查看文件,会弹出 jd-gui 运行框打开jar,在此查看 .class文件
我们要重新编译打包需要用到的是smali文件,所以我们最终还是要修改smali文件,class只能当做查看的工具。
实在不想查看smali文件,可以下载javaTosmali插件 https://plugins.jetbrains.com/plugin/7385-java2smali
更改java文件后编译成smali 进行替换