本文中winwin7小编给大家分享介绍的这款APK反编译工具在使用apktool反编译apk修改Smali文件之后再进行build会出现错误,这种情况下可以换一个更高版本的apktool试试。一个强大的apk文件编辑工具。执行成功后你会发现tools目录下多了一个classout文件夹,里面就是smali类型的文件,里面是反编译出的代码,但是不是java代码,还是能看出变量和方法的。
APK反编译工具详细图文教程
遇到比较高级的apk文件可以选择使用baksmali+smali来进行apk的修改及重新打包。
1.首先解压apk文件,获得classes.dex文件
2.使用baksmali反编译classes.dex
命令为: java -jar baksmali.jar -o classout/ classes.dex
3.反编译的smali文件存在./classout之中。&
4.此时对classout目录下的smali文件就可以进行修改了
修改过之后需要使用smali.jar将smali目录重新编译为classes.dex
5.使用压缩工具将新生成的classes.dex塞入apk包替换原有的classes.dex
这里需要说明的就是使用baksmali.jar反编译的生成的smali文件使用的是baksmali语法,和apktool反编译生成的smali语法有些许的区别。
6.替换apk包中的classes.dex文件之后,需要对apk重新签名才能安装
smali/baksmali使用方法
android 合并apk和odex文件
前提:正确安装jdk和配置环境变量
需要这个apk所在的rom里面的一些jar文件,
都在/system/framework里面:core.jar, ext. jar, framework. jar, android.policy. jar, services. Jar。
当然,这五个是最基本的,有可能还不够,这种情况下面会讲到。
总共分四步:
1、把下载好的smali-2.1.3.jar 和baksmali-2.1.3.jar ,还有rom里面抠出来的5个jar,放到工作目录,然后apk和odex也放到一起。
2、分解odex文件为class文件。
将smali-2.1.3.jar 和baksmali-2.1.3.jar放在d:odex文件夹下
命令:键入 d:回车 键入cd odex 回车
java -jar baksmali-2.1.3.jar -x a.odex\a.odex喂odex文件的文件名在键入命令前务必正确安装JDK和配置环境变量
a.odex;处是你要分解的odex文件的名字,命令完成之后,会生成一个out文件夹,里面就是所有的class文件。如果出现问题,
比如什么异常,缺少包什么的,就更到rom里面把出错信息里面要求的包拿出来,放到当前目录下。
3、将class生成为classes.dex文件。
命令:java -Xmx512M -jar smali-2.1.3.jar out -o classes.dex
4、 把classes.dex放入apk里面。
以上便是WinWin7小编给大家分享介绍的APK反编译工具!