将APK直接解压(修改后缀名为.zip,然后解压)后,解压出dex文件如何运行,可以看到目录下包含一个classes.dex文件。如下图所示,是一个APK文件解压后的到的:
若想要阅读该文件的内容,可以使用 dex2jar 和 jd-gui 工具。下面介绍这两种工具的安装及使用方法。
调整所有字段的字节序(LITTLE_ENDIAN)和对齐结构中的每一个域 验证DEX文件中的所有类 对一些特定的类进行优化,对方法里的操作码进行优化 。优化后的文件大小会有所增加,应该是原Android DEX文件的1-4倍。 优化发生的时。
一、安装 dex2jar
下载地址:。
下载之后解压即可。如图:
二、使用 dex2jar
1. 将需要反编译的dex文件(这里是classes.dex)复制到 dex2jar 解压目录下。
2. 打开命令行进入 d2j-dex2jar.bat 文件所在目录,输入命令 d2j-dex2jar.bat classes.dex 。
APK文件其实是zip格式,但后缀名被修改为apk,通过UnZip解压后,可以看到Dex文件,Dex是DalvikVMexecutes的简称,即AndroidDalvik执行程序,并非JavaME的字节码而是Dalvik字节码。Android在运行一个程序时首先需要UnZip,然后类似。
此时可以看到目录中多出了classes-dex2jar.jar文件。
那么如何查看该jar文件的内容呢?此时就需要安装 jd-gui 。
三、安装 jd-gui
下载地址:。
当java程序编译成class后,还需要使用dex工具将所有的class文件整合到一个dex文件,目的是其中各个类能够共享数据,在一定程度上降低了冗余,同时也是文件结构更加经凑,dex文件是传统jar文件大小的50%左右。dex将原来class每个。
同样,下载之后解压即可。如图:
不能打开 ios一般是苹果手机或者苹果平板用的一种系统 而dex文件一般是windows电脑系统的文件 所以不能运行。
四、使用 jd-gui
APK文件其实是zip格式,但后缀名被修改为apk,通过UnZip解压后,可以看到Dex文件,Dex即Android Dalvik执行程序,你可以在安装Android操作系统的手机中执行即可安装。
双击运行 jd-gui.exe 文件,将jar文件拖到工作区即可打开。