关闭

反编译APK

3304人阅读 评论(3) 收藏 举报
分类:

什么是反编译?先了解一下编译,编译就是项目在完成需要生成apk的时候,会将源码变成一个classes.dex的文件,这样我们就无法看到源码了,so~ 反编译就是逆转,将classes.dex重新变成源码,以便我们进行查看。(当然,想一目了然的查看也是不现实的,毕竟存在对抗手段——混淆、加固、伪加密)
本篇博客重点说的是如何反编译,至于混淆,以后再说。
说到反编译,会的人基本上都知道需要什么工具,所以说,这篇博客是针对新手来说的,大神勿喷,谢谢合作~看图!这里写图片描述

就是这3种工具~先说明一下:
工具1:apktool是反编译资源文件的,也就是说获取项目中res文件下的所有东西,图片、布局等等。
工具2:dex2jar,是将apk中的classes.dex文件转换成jar文件,看这名起的就很6!!dex to jar~~
工具3:jd-gui,这个呢!就是专门查看工具2生成的jar文件的,里面也是就是我们想要查看的源码

功能介绍完毕,下面附上链接地址,方便你们下载
1、apktool下载地址:https://bitbucket.org/iBotPeaches/apktool/downloads,下载下来后,解压,只是一个jar文件,需要重命名apktool.jar,想要使用的话还需要创建一个apktool.bat文件,里面的内容这样写:

@echo off
if "%PATH_BASE%" == "" set PATH_BASE=%PATH%
set PATH=%CD%;%PATH_BASE%;
java -jar -Duser.language=en "%~dp0\apktool.jar" %1 %2 %3 %4 %5 %6 %7 %8 %9

注意:这个jar和bat必须放在同一个文件夹下。
2、dex2jar下载地址:https://sourceforge.net/projects/dex2jar/
3、jd-gui下载地址:http://jd.benow.ca/
全部下载解压,就可以看到上图的效果,把这3个工具尽量也放在一个文件夹下,方便查看管理。
————————————————————————————————前方高能!———————————————————————
我们先看一下如何反编译获取项目中的res资源文件~
大爷的!上传不了图片了怎么!!!!语言描述吧!在jar和bat的目录下运行cmd,然后输入:

apktool d E:\apk反编译\XXX.apk

这里我下载的想要反编译的apk是在E盘,所以写这个路径,你的apk在哪,你就写哪个路径,然后回车,等待编译完成后,你就可以看到apktool文件夹下,不仅有jar和bat文件了,还多了一个项目的文件夹,里面就有我们想要的各种资源文件。

接下来我们要反编译classes.dex获取源码了
第一步:你可以下载个360压缩,然后右键apk文件,用360压缩打开。然后解压里面的一个classes.dex文件到某个路径下
第二步:双击打开dex2jar文件夹,在该目录下运行cmd,然后输入:

d2j-dex2jar E:\apk反编译\classes.dex

同样这个路径选择你的解压后的classes.dex的路径,回车,等待。
完成以后,打开dex2jar文件夹,就会发现多了一个classes-dex2jar.jar的一个jar文件
第三步:用jd-gui查看源码,打开jd-gui文件夹,双击运行jd-gui.exe,选择第二步生成的jar包路径,就可以查看了!

Ok了 至此就搞定了!

2
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:76428次
    • 积分:1329
    • 等级:
    • 排名:千里之外
    • 原创:67篇
    • 转载:0篇
    • 译文:0篇
    • 评论:15条
    文章分类
    最新评论