Android APK反编译图片资源、Java源码

已发布的安卓应用apk可以通过反编译(decompile)得到图片、布局等UI资源文件,也可以得到Java源码。Java源码一般是被混淆后的代码(如所有类名、变量名、函数名都使用abc等无意义内容替换),但不妨碍参考。

转自:Android APK反编译就这么简单

工具介绍

工具作用官方下载
apktool资源获取,可以提取出图片文件和布局文件Google
dex2jar源码获取,反编译apk为Java源码(实际是将classes.dex转化成jar文件)Google
jd-gui源码查看,查看jar文件即源码Google
luyten源码查看,查看jar文件即源码(可查看部分jd-gui无法查看的代码)Github

P.S.原文CSDN下载地址中的apktool.jar过时,会出现”can not decode arsc file”的错误。
这里提供新的下载:android反编译工具包(4in1),包含:

  • apktool_2.0.0rc4(新)
  • jd-gui-0.3.5.windows
  • dex2jar-0.0.9.15
  • luyten-0.5.3(2017-8-12新增)

反编译:资源获取

1、解压apktool.zip,到3个文件:aapt.exe,apktool.bat,apktool.jar ,将需要反编译的APK文件放到该目录下,运行cmd命令(先定位到该目录下):

apktool.bat d -f test.apk

反编译完毕后出现的新文件夹test即为反编译出的资源。

2、如果想将反编译完的文件重新打包成apk,可以输入

apktool.bat b test

完成后可以在之后在test/dist/中找到新的APK

P.S.三合一工具包中也加入了两个.bat运行脚本,编辑更改apk名字后即可运行。

反编译:获取Java源码

1、解压dex2jar.zip
2、解压apk文件,得到其中的classes.dex文件(它就是java文件编译再通过dx工具打包而成的)
3、将获取到的classes.dex放到dex2jar文件夹内,运行cmd命令(先定位到该目录下):

dex2jar.bat classes.dex

完成后,在该目录下会生成一个classes_dex2jar.jar的文件,然后使用工具jd-gui.exe打开该文件即可看到源码(被混淆处理过)。

代码查看

可以使用工具jd-gui.exe打开*.jar文件查看其中的Java代码。但有些代码使用jd-gui仅仅显示了错误:“// INTERNAL ERROR //”,解决方法是使用开源工具luyten查看,该工具已集成到工具包中。

相关连接:jd-gui报错INTERNAL ERROR 解决办法

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值