使用dex2jar和jd-gui和apktool反编译一个apk

  1. dex2ja:用来反编译apkhtml

    jd-gui:把反编译生成的jar变成java语言java

    apktool:反编译生成xmlgit

     

    将要反编译的APK后缀名改成.rar或 .zip,并解压github

    怎么用dex2jar反编译一个apk
  2. 2

    获得其中的classes.dex文件(它就是java文件编译再经过dx工具打包而成的),将获取到的classes.dex放到以前解压出来的工具dex2jar-0.0.9.15 文件夹内windows

    怎么用dex2jar反编译一个apk
  3. 3

    在命令行下定位到dex2jar.bat所在目录,输入d2j-dex2jar.bat   classes.dex。app

    效果以下:工具

     

    怎么用dex2jar反编译一个apk
  4. 4

    在该目录下会生成一个classes_dex2jar.jar的文件,而后打开工具jd-gui文件夹里的jd-gui.exe,以后用该工具打开以前生成的classes_dex2jar.jar文件,即可以看到源码了,效果以下:ui

    怎么用dex2jar反编译一个apk
  5. 5

    被混淆过的效果图(类文件名称以及里面的方法名称都会以a,b,c....之类的样式命名):spa

    怎么用dex2jar反编译一个apk
  6.  

 

 

apktool  .net

     做用:主要查看res文件下xml文件、AndroidManifest.xml和图片。(注意:若是直接解压.apk文件,xml文件打开所有是乱码)

dex2jar

     做用:将apk反编译成Java源码(classes.dex转化成jar文件)

jd-gui

     做用:查看APK中classes.dex转化成出的jar文件,即源码文件

新版本apktool用法:

一、下载:
 
 
固然了上面这个连接和图片描述的可能也会变。
目前就是下载两个文件apktool.bat和apktool.jar(这个若是你下载的文件有版本号,好比apktool_2.2.1.jar,就要更名字为apktool.jar),
而后把上面两个文件都放到C://Windows下面。(我是windows系统,其余系统按照本身的来)
 
二、使用方法
 
 
官网教程
 
$ apktool d test.apk I: Using Apktool 2.2.1 on test.apk I: Loading resource table... I: Decoding AndroidManifest.xml with resources... I: Loading resource table from file: 1.apk I: Regular manifest package... I: Decoding file-resources... I: Decoding values */* XMLs... I: Baksmaling classes.dex... I: Copying assets and libs... I: Copying unknown files... I: Copying original files... $ apktool b test I: Using Apktool 2.2.1 on test I: Checking whether sources has changed... I: Smaling smali folder into classes.dex... I: Checking whether resources has changed... I: Building resources... I: Building apk file... I: Copying unknown files/dir... 
其实就是,运行CMD,进入好比app-release.apk所在目录,而后运行apktool d app-release.apk就能够了,默认解压的文件就在app-release.apk所在目录。
 
 

 

 

最后,若是我上面的方法不能用了,请看英文的原网页怎么说。

 

 

 

好比:

http://blog.csdn.net/vipzjyno1/article/details/21039349/#reply

 

dex2jar

     做用:将apk反编译成Java源码(classes.dex转化成jar文件)

jd-gui

做用:查看APK中classes.dex转化成出的jar文件,即源码文件

 

Smali2JavaUI

对于博主说得,先dex2jar把classes.dex转为jar,再jd-gui把jar转为源码*.java文件。
如今能够用Smali2JavaUI这个软件,一部到位。能够把这两个步骤化为一个步骤。
 
因此,若是只想反编译看*.java文件的话,只用Smali2JavaUI软件就能够了。
这个软件能够直接打开***.apk文件,而后就直接看到*.java文件了。
Smali2JavaUI最新版本下载连接 http://www.hensence.com/cn/smali2java/#Download
 
http://blog.csdn.net/ysc123shift/article/details/52985435
相关文章
相关标签/搜索