[转载]Android:反编译、修改代码、重新编译-Android开发实例教程-eoe Android开发者社区_Android开发论坛.
末尾有相关工具下载和使用方法
一、反编译
反编译我使用的是AntiDroid V1.4.2,下载地址 https://code.google.com/p/anti-droid/
1.打开下载好的AntiDroid,选择“反编译apk”
2.填好路径,点击“反编译apk”即可得到一个包含资源文件的文件夹”123.dp”
资源文件夹
smali目录下的就是反编译出来的smali文件,这是一种类似于汇编语言的代码,阅读起来有一定的困难,为了便于阅读,我们再将apk文件反编译成jar的包
4.照样是使用 AntiDroid,这次选择“转换dex为jar”,选择apk的路径和存储反编译的jar的路径,点击转换后的到“123.jar”文件
二、修改源代码
1. 下载 jd-gui,用jd-gui打开刚刚反编译的123.jar,整个软件的代码结构就能看到了
2. 现在就是最麻烦的一步了,我们要分析整个代码结构,从中找到你要修改的代码
3. 确定修改什么代码后并不能直接修改java代码,而是要回到开始的smali文件里面修改,然后重新编译
三、重新编译
由于我这儿使用AntiDroid重新编译会报错,我使用的是apktool进行编译
1. 下载apktool,地址 https://code.google.com/p/Android-apktool/
2. 使用命令 apktool b [目录路径] 编译,编译成功后会在原文件夹生成build和dist两个文件夹,dist里面就有编译好的apk文件
3. 使用AntiDroid对新生成的apk签名,点击AntiDroid的“apk签名”,选择dist里面的apk文件,输出到任意文件夹都可
4. 将签名的apk安装到Android手机,现在你就可以看到效果了
应大家要求,把相关工具整体出来了,给大家下载:
1. Anti-droid
项目地址: http://code.google.com/p/anti-droid
使用方法: http://www.iwind.me/?p=138
下载: AntiDroid V1.4.2.rar (5.71 MB, 下载次数: 411)
2. apktool
项目地址: https://code.google.com/p/Android-apktool/
使用方法: http://www.iwind.me/?p=99
下载: apktool1.5.2.rar (2.72 MB, 下载次数: 228)
3. jd-gui
官方地址: http://java.decompiler.free.fr/?q=jdgui
使用方法: 这个比较简单,和大部分软件差不多,直接打开jar等文件即可
下载: jd-gui-0.3.5.windows.zip (770.97 KB, 下载次数: 137)