android 反编译apk

Posted lisa2016

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android 反编译apk相关的知识,希望对你有一定的参考价值。

 apktool——可以反编译软件的布局文件、图片等资源,方便大家学习一些很好的布局;

dex2jar——将apk反编译成java源码(classes.dex转化成jar文件);

jd-gui——查看APK中classes.dex转化成出的jar文件,即源码文件。

1、apktool文件的下载

apktool是反编译android apk文件的工具,apktool的主页是https://ibotpeaches.github.io/Apktool/;我们可以从这里找到最新版本的apktool.jar文件https://bitbucket.org/iBotPeaches/apktool/downloads/,以及apktool的安装说明。

 技术图片

 

 

2、apktool的安装

前面我们已经下载了最新的apktool.jar文件,最新版本是2.3.1,请按照以下步骤操作,参考https://ibotpeaches.github.io/Apktool/install/:

 技术图片

 

 

    新建文本文件,将下面的脚本复制到文本并保存,然后重命名为apktool.bat;

  

    @echo off

    if "%PATH_BASE%" == "" set PATH_BASE=%PATH%

    set PATH=%CD%;%PATH_BASE%;

    chcp 65001 2>nul >nul

    java -jar -Duser.language=en -Dfile.encoding=UTF8 "%~dp0\\apktool.jar" %*

     从上面脚本中也可以看到是用apktool.jar文件去处理;

    将下载的apktool_2.3.1.jar文件重命名为apktool.jar;

3、使用apktool反编译apk

    将上述两个文件apktool.bat和apktool.jar文件放到同一文件夹下(任意路径),打开命令窗口(win+R-->cmd-->enter);定位到apktool所在的文件夹;输入以下命令:

>apktool.bat d -f  .apk  objectFolderPath 

其中,objectFolderPath为可选项,如果此项不存在,软件将会在apktool文件夹下新建一个apk文件名的文件夹,否则存储到目标文件夹;

 

 技术图片

 

技术图片

 

 

4使用dex2jar反编译apk得到Java源代码

将test.apk解压将其中的classes.dex文件放到dex2jar-2.0 目录下

 技术图片

 

 

5.dos命令定位到dex2jar.bat所在目录,输入"d2j-dex2jar classes.dex",效果如下:

d2j-dex2jar.bat classes.dex

 技术图片

 

 

6使用【jd-gui】工具将class文件反编译成java源代码

双击jd-gui.exe 将classes-dex2jar.jar 拖入jd-gui.exe即可

 技术图片

 原作者:https://www.cnblogs.com/pythoncd/p/10367144.html

 

以上是关于android 反编译apk的主要内容,如果未能解决你的问题,请参考以下文章

怎样反编译 Android APK

反编译修改Android apk的版本号

反编译Android APK及防止APK程序被反编译

如何反编译android应用并重新打包

apk 反编译

反编译apk工具,apk反编译工具Jadx的使用