打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
APK反编译

先说一下apk的结构。APK采用了zip格式的压缩,我们可以很容易解压。

一个APK文件结构为:

META-INF/   Jar文件中常可以看到

res/  存放资源文件的目录

AndroidManifest.xml  程序全局配置文件

classes.dex  Dalvik字节码

resources.arsc  编译后的二进制资源文件

apk下的文本文件是做了二进制处理的。

 

如果我们只是想看APK Manifest信息。可以使用aapt命令。

命名格式为:

aapt dump badging  *.apk  (这里*.apk是你的apk)

aapt命令我们可以在SDK下对应版本下的tools文件夹下找到:

这个是我的路径:C:/android-sdk-windows/platforms/android-7/tools

 

 

如果是res目录下的文件,则需要用工具来读取并生成文本文件,android4meAXMLPrinter2是个很好的选择。

下载地址:

http://code.google.com/p/android4me/downloads/detail?name=AXMLPrinter2.jar&can=2&q=

使用方法:

java –jar AXMLPrinter2.jar  capture.xml > test.xml

执行后,将标准输出capture.xmltest.xml文件。

 

下面我们开始反编译代码部分。反编译代码需要两个工具:

  • dex2jar,用于将dex文件转换为jar文件;
  • jd-gui,将jar文件反向工程为java代码。

dex2jar的地址:http://code.google.com/p/dex2jar/

下载后解压,dex2jar 的命令使用:

dex2jar.sh  classes.dex

命令执行后,会在该文件夹下生成一个classes.dex.dex2jar.jar的文件。

jd-guiwindows,mac,linux三个版本。我们下载对应版本。

jd-gui的地址:http://java.decompiler.free.fr/?q=jdgui

下载后解压,点执行文件。把刚才dex2jar生成的jar文件拖入jd_gui界面即可生成源代码。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Android工程的编译过程
如何手动完成一次APK打包?
安卓软件逆向工程基础概念
Android Little Tips系列之一:如何反编译apk文件
Android之用jadx进行反编译
APK反编译过程及用到的工具
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服