zoukankan      html  css  js  c++  java
  • 安卓apk反编译详解

    环境准备:windows

    工具及介绍:

    • apktool 
      • 获取资源文件,提取图片文件,布局文件,还有一些xml的资源文件
    • dex2jar
      • 将apk反编译成java源码(classes.dex转化成jar文件)
    • jd-gui
      • 查看apk的classes.dex转化完的jar文件,即源码文件

    百度网盘获取:

    链接:https://pan.baidu.com/s/1QTTPfdDfMSMk8jIpwJkQZw
    提取码:olzw

    操作流程:

    apk反编译得到程序的源代码、图片、XML配置、语言资源等文件

    • 把下载好的apktool_2.4.0.jar和apktool.bat放在自定义文件夹中,例如:D:apktool
    • 注意:apktool_2.4.0.jar需要手动把版本号去掉如下图:

    • 检查是否安装成功,出现如下图所示证明安装ok(如果使用powershell运行失败,建议使用cmd命令行工具)
    • 命令行窗口输入:apktool

    注意:下载完把文件后版本号一定要去掉(apktool_2.4.0.jar ),否则报如下错误

    • 开始反编译
    • 命令行窗口输入:apktool.bat d [apk文件名] -o [输入文件夹]
    • 成功后如下图

    • 使用apktool解码apk得到的文件夹如下图,其中res文件夹下存放layout、drawable、values等资源。

    注意:
    此时 dex 文件直接反编译成了 smali 文件,而我们需要的是 .dex 文件。

    此时再运行:

    $ apktool d -s -f test.apk
    • -d 反编译 apk 文件
    • -s 不反编译 dex 文件,而是将其保留
    • -f 如果目标文件夹存在,则删除后重新反编译

    此时得到这样的文件夹:

    dex2jar-反编译得到Java源代码

    • 把下载好的dex2jar-2.0解压至自定义文件夹内,如下图

    • 将classes.dex文件放置文件目录:D:apktooldex2jar-2.0
    • 命令行窗口输入:d2j-dex2jar.bat classes.dex
    • 成功后如下图:

     

    jd-gui查看源代码,如下图

    注意:如果运行打开时出现如下,需要安装JRE环境,点击确定后到浏览器下载安装即可。

     

  • 相关阅读:
    玩游戏(dfs)
    Find them, Catch them(并查集)
    Shredding Company(dfs)
    Sudoku(dfs)
    Network Saboteur(dfs)
    棋盘问题(dfs)
    Curling 2.0(dfs)
    A Knight's Journey(dfs)
    15. 3Sum
    12. Integer to Roman
  • 原文地址:https://www.cnblogs.com/helloTerry1987/p/11368206.html
Copyright © 2011-2022 走看看